diff --git a/common/modules-fr/prelude.org b/common/modules-fr/prelude.org index 99cc21b..01d903d 100644 --- a/common/modules-fr/prelude.org +++ b/common/modules-fr/prelude.org @@ -1,69 +1,69 @@ #+BEAMER_HEADER: \titlegraphic{\includegraphics[height=1.5cm]{SWH}} #+STARTUP: hidestars # activate org-beamer-mode minor mode automatically #+STARTUP: beamer # org export options #+LANGUAGE: en #+OPTIONS: H:2 num:t toc:nil \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t #+OPTIONS: TeX:t LaTeX:t skip:nil d:nil todo:t pri:nil tags:not-in-toc #+EXPORT_SELECT_TAGS: export #+EXPORT_EXCLUDE_TAGS: noexport #+LINK_UP: #+LINK_HOME: #+LaTeX_CLASS: beamer #+LaTeX_CLASS_OPTIONS: [presentation,xcolor=table] # # important font choice! # #+LaTeX_HEADER: \usepackage{libertine} # # Let's move that logo... # #+LaTeX_HEADER: \usepackage{animate} #+COLUMNS: %40ITEM %10BEAMER_env(Env) %9BEAMER_envargs(Env Args) %4BEAMER_col(Col) %10BEAMER_extra(Extra) # have the theme desired #+latex_header: \mode{\usetheme{swh} \beamertemplatenavigationsymbolsempty \setbeamertemplate{navigation symbols}{} \setbeamertemplate{headline}{} #+latex_header: \setbeamertemplate{footline} #+latex_header: { #+latex_header: \leavevmode% #+latex_header: \hbox{% #+latex_header: \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.25ex,dp=1ex,center]{author in head/foot}% #+latex_header: \usebeamerfont{author in head/foot}\insertshortauthor%~~\beamer@ifempty{\insertshortinstitute}{}{(\insertshortinstitute)} #+latex_header: \end{beamercolorbox}% #+latex_header: \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.25ex,dp=1ex,right]{title in head/foot}% #+latex_header: \usebeamerfont{title in head/foot}\insertshorttitle{}\hspace*{2em} #+latex_header: \usebeamerfont{date in head/foot}\insertshortdate{}\hspace*{2em} #+latex_header: \insertframenumber{} / \inserttotalframenumber\hspace*{2ex} #+latex_header: \end{beamercolorbox}}% #+latex_header: \vskip0pt% #+latex_header: } #+latex_header: } # some color -#+latex_header: \rowcolors[]{1}{blue!10}{blue!05} +# #+latex_header: \rowcolors[]{1}{blue!10}{blue!05} # no longer works with texlive >= 2022 # to have a toc for each section # #+latex_header: \AtBeginSection[] {\begin{frame} \frametitle{Outline} \tableofcontents[currentsection]\end{frame} } # set the paths for images #+latex_header: \graphicspath{% #+latex_header: {pics/}{../images/}{../../images/}{../pics/}{../../pics/}% #+latex_header: {../figures/}{../../figures/}{../logos/}{../../logos/}{../../../logos/}% #+latex_header: {../../communication/web/graphics/carousel/}% #+latex_header: {../../communication/web/graphics/pictos/png/400x400/}% #+latex_header: } # some default information I did not find how to set this in org-mode #+latex_header: \institute[Irill/INRIA/UPD]{\url{roberto@dicosmo.org}} # to add the picblock macro #+latex_header: \usepackage{extblocks} #+latex_header: \usepackage{pgfpages} #+latex_header: \usepackage{animate} #+latex_header: \usepackage{alltt} diff --git a/common/modules/policyactions.org b/common/modules/policyactions.org index b5680ad..13e1509 100644 --- a/common/modules/policyactions.org +++ b/common/modules/policyactions.org @@ -1,294 +1,390 @@ #+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 * Policy actions :PROPERTIES: :CUSTOM_ID: main - :END: + :END: ** EU recommendation on access to and preservation of scientific information # Commission Recommendation (EU) 2018/790 of 25 April 2018 on access to and preservation of scientific information *** :B_column:BMCOL: :PROPERTIES: :BEAMER_col: .4 :BEAMER_env: column :END: #+ATTR_LATEX: :width .9\linewidth file:eu-2018-recomm.png #+BEAMER: \pause *** Selection from [[https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:32018H0790][EU 2018 recommendation]] :B_block:BMCOL: :PROPERTIES: :BEAMER_col: .6 :BEAMER_env: block :END: /"Member States should set and implement clear policies (as detailed in national action plans) for"/ - Preservation and re-use of research outputs #+latex:\begin{quote} /"reinforcing the preservation and re-use of scientific information (publications, data sets and other research outputs)"/ #+latex:\end{quote} - Infrastructures #+latex:\begin{quote} /" further developing infrastructures underpinning the system for access to, preservation, sharing and re-use of scientific information and"/ #+latex:\end{quote} ** The French Law for a Digital Republic :PROPERTIES: :CUSTOM_ID: loilemaire :END: *** :B_column:BMCOL: :PROPERTIES: :BEAMER_col: .4 :BEAMER_env: column :END: #+ATTR_LATEX: :width .9\linewidth file:loilemaire.png #+BEAMER: \pause *** French Law for a Digital Republic (7/8/2016) :B_block:BMCOL: :PROPERTIES: :BEAMER_col: .6 :BEAMER_env: block :END: *Open up public documents* - open by default administrative documents - open by default source code of software + produced by the administration + received by the administration \hfill See [[https://www.economie.gouv.fr/files/files/PDF/DP_LoiNumerique.pdf][the official press kit]] ** French prime minister directive on data and code :PROPERTIES: :CUSTOM_ID: missionll :END: *** :B_column:BMCOL: :PROPERTIES: :BEAMER_col: .4 :BEAMER_env: column :END: #+ATTR_LATEX: :width .9\linewidth file:2021-04-27_PMFrance.png #+BEAMER: \pause *** [[https://circulaire.legifrance.gouv.fr/download/pdf/circ?id=45162][French Prime Minister directive]] (27/4/2021) :B_block:BMCOL: :PROPERTIES: :BEAMER_col: .6 :BEAMER_env: block :END: *Policy on data, algorithms and code* - step up efforts to - open up data from public administration (data.gouv.fr) - open by default source code of software + produced by the administration + received by the administration - creation of - "open source software mission" - network of "data, algorithm and code officers" *Early outcomes* - public sector source code is now being actively [[https://www.etalab.gouv.fr/code-etalab-gouv-fr-les-codes-sources-de-logiciels-publies-par-des-organismes-publics][archived in Software Heritage]] ** The Paris call: Software Source Code is our Heritage :PROPERTIES: :CUSTOM_ID: pariscall2019 :END: *** :B_column:BMCOL: :PROPERTIES: :BEAMER_col: .53 :BEAMER_env: column :END: #+ATTR_LATEX: :width .7\linewidth file:UNESCOParisCallMeeting.png UNESCO, Inria, Software Heritage invite\\ [[https://en.unesco.org/news/experts-call-greater-recognition-software-source-code-heritage-sustainable-development][40 international experts meet in Paris]] ... #+BEAMER: \pause *** :B_column:BMCOL: :PROPERTIES: :BEAMER_col: .5 :BEAMER_env: column :END: #+ATTR_LATEX: :width .65\linewidth file:paris_call_ssc_cover.jpg [[https://en.unesco.org/foss/paris-call-software-source-code][Their call is published on Feb 2019]] \pause *** :B_ignoreheading: :PROPERTIES: :BEAMER_env: ignoreheading :END: *** :PROPERTIES: :BEAMER_COL: 1.06 :BEAMER_env: block :END: It's an important /policy tool/, already referenced and used ... \hfill /yes, you can sign it!/\\ \vspace{10pt} \hfill https://en.unesco.org/foss/paris-call-software-source-code \hfill\mbox{} +** The Paris Call on Software Source code (2019, UNESCO) + :PROPERTIES: + :CUSTOM_ID: pariscall2019science + :END: +#+BEAMER: \vspace{-.8em} +*** :B_column:BMCOL: + :PROPERTIES: + :BEAMER_col: .53 + :BEAMER_env: column + :END: + #+ATTR_LATEX: :width .65\linewidth + file:UNESCOParisCallMeeting.png + UNESCO, Inria, Software Heritage invite\\ + [[https://en.unesco.org/news/experts-call-greater-recognition-software-source-code-heritage-sustainable-development][40 international experts to meet in Paris]] + #+BEAMER: \pause +*** :B_column:BMCOL: + :PROPERTIES: + :BEAMER_col: .5 + :BEAMER_env: column + :END: + #+ATTR_LATEX: :width .6\linewidth + file:paris_call_ssc_cover.jpg + [[https://en.unesco.org/foss/paris-call-software-source-code][The call is published on Feb 2019]]\pause +*** :B_ignoreheading: + :PROPERTIES: + :BEAMER_env: ignoreheading + :END: +# #+BEAMER: \vspace{-.3em} +*** + :PROPERTIES: + :BEAMER_COL: 1.06 + :BEAMER_env: block + :END: + #+LATEX: {\it + “[We call to] promote software development as a valuable research activity, + and research software as a key enabler for Open Science/Open Research, + sharing good practices and recognising in the careers of academics their + contributions to high quality software development, in all their forms” + #+LATEX: } + https://en.unesco.org/foss/paris-call-software-source-code ** The EOSC SIRS report: Software Source Code and Open Science :PROPERTIES: :CUSTOM_ID: eoscsirs2020 :END: *** :B_column:BMCOL: :PROPERTIES: :BEAMER_col: .4 :BEAMER_env: column :END: #+ATTR_LATEX: :width .9\linewidth file:EOSC-SIRS-report.png #+BEAMER: \pause *** Important /policy tool/ in Open Science (Dec 2020) :B_block:BMCOL: :PROPERTIES: :BEAMER_col: .6 :BEAMER_env: block :END: - 9 infrastructures + 3 archives + 3 open access publishers + 3 aggregators - recommendations + *archive in Software Heritage, use SWHID* + *open non profit* + *default to open source* for research software #+latex:\begin{quote} "all research software should be made available under an Open Source license by default, and all deviations from this default practice should be properly motivated" #+latex:\end{quote} See https://doi.org/10.2777/28598 ** The EOSC SIRS report: an architecture for Source Code and Open Science :PROPERTIES: :CUSTOM_ID: eoscsirs2020-expanded :END: *** :B_column:BMCOL: :PROPERTIES: :BEAMER_col: .4 :BEAMER_env: column :END: #+ATTR_LATEX: :width .9\linewidth file:EOSC-SIRS-report-expanded.png #+BEAMER: \pause *** Important /policy tool/ in Open Science (Dec 2020) :B_block:BMCOL: :PROPERTIES: :BEAMER_col: .6 :BEAMER_env: block :END: 3 archives, 3 open access publishers, 3 aggregators - recommendations + *archive in Software Heritage*, *connect* it with repositories, publishers and aggregators + *use SWHID* # + *open non profit* + *default to open source* for research software #+latex:\begin{quote} "all research software should be made available under an Open Source license by default, and all deviations from this default practice should be properly motivated" #+latex:\end{quote} - implementation: first steps via *FAIRCORE4EOSC* See https://doi.org/10.2777/28598 ** EOSC task force on infrastructures for quality research software :PROPERTIES: :CUSTOM_ID: eoscswtf2021 :END: *** :B_column:BMCOL: :PROPERTIES: :BEAMER_col: .4 :BEAMER_env: column :END: #+ATTR_LATEX: :width .9\linewidth file:EOSC-SWI-TF.png #+BEAMER: \pause *** Ongoing action in the EOSC :B_block:BMCOL: :PROPERTIES: :BEAMER_col: .6 :BEAMER_env: block :END: *Task force on infrastructures for quality research software* - Foster the development and deployment of tools and services that allow researchers to properly archive, reference, describe with proper metadata, share and reuse research software. - Improve the quality of research software, both from the technical and organizational point of view ... - Increase recognition to software developers and maintainers of research software ... See [[https://www.eosc.eu/sites/default/files/tfcharters/eosca_tfinfrastructureforqualityresearchsoftware_draftcharter_20210614.pdf][the charter of the task force]]. ** The UNESCO recommendations for Open Science :PROPERTIES: :CUSTOM_ID: unesco2021 :END: #+BEAMER: \vspace{-1em} *** :B_column:BMCOL: :PROPERTIES: :BEAMER_col: .4 :BEAMER_env: column :END: #+ATTR_LATEX: :width .9\linewidth file:UNESCO-open-science-draft.png #+BEAMER: \pause *** Selection from [[https://unesdoc.unesco.org/ark:/48223/pf0000378381.locale=en][the recommendations]] :B_block:BMCOL: :PROPERTIES: :BEAMER_col: .6 :BEAMER_env: block :END: - Open Source for Open Science #+latex:\begin{quote} /"The source code must be included in the software release and made available on openly accessible repositories and the chosen license must allow modifications, derivative works and sharing under equal or compatible open terms and conditions"/ #+latex:\end{quote} - Infrastructures #+latex:\begin{quote} /"Open science infrastructures should be organized and financed upon an essentially not-for-profit and long-term vision, which enhance open science practices and guarantee permanent and unrestricted access to all, to the largest extent possible."/ #+latex:\end{quote} ** French National plan for Open Science :PROPERTIES: :CUSTOM_ID: pnso2 :END: *** :B_column:BMCOL: :PROPERTIES: :BEAMER_col: .4 :BEAMER_env: column :END: #+ATTR_LATEX: :width .85\linewidth file:PNSO2-en-cover.png #+BEAMER: \pause *** 2nd National Plan for Open Science (6/7/2021) :B_block:BMCOL: :PROPERTIES: :BEAMER_col: .6 :BEAMER_env: block :END: *Open and promote research software source code* - actions (selection) - charter for research software policy - recognize software development (see [[https://www.ouvrirlascience.fr/ouverture-des-candidatures-du-prix-science-ouverte-du-logiciel-libre-de-la-recherche/][announcement of the 2021 prize]]) - coordinate communities of practice - connected ecosystem of research outputs - recommendations (selection) + *archive in Software Heritage* + *standardise and use SWHID* + *build a national catalog of research software* + *leverage ADAC network* \hfill See [[https://www.enseignementsup-recherche.gouv.fr/cid159131/le-plan-national-pour-la-science-ouverte-2021-2024-vers-une-generalisation-de-la-science-ouverte-en-france.html][official announcement]] - - - ** French National Roadmap for Research Infrastructures :PROPERTIES: :CUSTOM_ID: roadmap2022 :END: *** :B_column:BMCOL: :PROPERTIES: :BEAMER_col: .4 :BEAMER_env: column :END: #+ATTR_LATEX: :width .9\linewidth file:feuille_de_route_DGRI_2021.png #+BEAMER: \pause *** National Roadmap of Research Infrastructures (2022-...) :B_block:BMCOL: :PROPERTIES: :BEAMER_col: .65 :BEAMER_env: block :END: *Framework* #+BEGIN_QUOTE "The strategic, scientific and financial challenges related to research infrastructures are such that sooner or later we will need to jointly program European and national investments in major research facilities." #+END_QUOTE \mbox{}\hfill Frédérique Vidal, Minister of Research, 2018 # https://www.enseignementsup-recherche.gouv.fr/sites/default/files/imported_files/documents/Brochure_Infrastructures_2018_UK_1023046.pdf *Software Heritage is now listed* - #+BEGIN_QUOTE - "Software Heritage will be included in the - national roadmap of research infrastructures in the Project category." - #+END_QUOTE - \mbox{}\hfill Claire Giry, DGRI, MESRI, 2021 + # + # Text below now outdated: SWH est dans la feuille de route publiee en fevrier 2022 + # + # #+BEGIN_QUOTE + # "Software Heritage will be included in the + # national roadmap of research infrastructures in the Project category." + # #+END_QUOTE + # \mbox{}\hfill Claire Giry, DGRI, MESRI, 2021 - +** First national Open Science awards for research software (2022) + :PROPERTIES: + :CUSTOM_ID: awards2022 + :END: + #+ATTR_LATEX: :width .8\textwidth + file:2022-PNLR-awards.png +* Context about Open Science + :PROPERTIES: + :CUSTOM_ID: context + :END: +** Why Open Science? + :PROPERTIES: + :CUSTOM_ID: whyopenscience + :END: +#+BEAMER: \vspace{-.5em} +*** Open Science ([[https://www.ouvrirlascience.fr/wp-content/uploads/2021/10/Second_French_Plan-for-Open-Science_web.pdf][Second National Plan for Open Science]], France, 2021) + /Unhindered/ dissemination of results, methods and products from scientific + research.\\ + It draws on /the opportunity provided by recent digital progress/ + to develop /open access/ to /publications/ and – as much as possible – /data/, + /source code/ and /research methods/. +#+BEAMER: \pause +#+BEAMER: \vspace{-.3em} +*** Jean-Eric Paquet (EU DGRI, [[https://www.eosc.eu/sites/default/files/EOSC-SRIA-V1.0_15Feb2021.pdf][on the objective of Open Science]]) +# Preface of EOSC SRIA https://www.eosc.eu/sites/default/files/EOSC-SRIA-V1.0_15Feb2021.pdf + “Increase /scientific quality/, the /pace of discovery and technological + development/, as well as /societal trust in science/.” +#+BEAMER: \pause +#+BEAMER: \vspace{-.1em} +*** Mariya Gabriel ([[https://www.s4d4c.eu/insights-from-commissioner-mariya-gabriel-towards-the-european-union-science-diplomacy/][EU Commissionneer]] for Research) +# From the article: https://www.s4d4c.eu/insights-from-commissioner-mariya-gabriel-towards-the-european-union-science-diplomacy/ + The COVID-19 crisis has also shown that cooperation at international level + in research and innovation is more important than ever, including through + /open access to data and results/. /No nation, no country can tackle any of + these global challenges alone/. +#+BEAMER: \pause +#+BEAMER: \vspace{-.3em} +*** Yuval Noah Harari (on COVID 19) + \hfill /“The real antidote [to epidemic] is/ scientific knowledge /and/ global cooperation.” +** Two well known pillars of Open Science + :PROPERTIES: + :CUSTOM_ID: otherpillars + :END: +*** Open Access (a long, painful, unfinished story) + + 19XX's :: compulsory exclusive copyright transfer to publishers (unlawful?)\pause\\ + (notable exceptions: [[https://www.usa.gov/government-works#item-206099][US federal agencies]] and [[https://www.nationalarchives.gov.uk/information-management/re-using-public-sector-information/uk-government-licensing-framework/crown-copyright/][UK Crown Copyright]])\pause + + 1990's :: Internet, Web and ArXiv break the [[https://hal.archives-ouvertes.fr/hal-03362932][marriage of convenience of researchers with publishers]]\pause + + 2000's :: declarations (Budapest, 2001; Berlin 7, 2009) and actions (LIPIcs, 2009)\pause + # for LIPIcs, see https://mail.google.com/mail/u/0/?zx=x1hap3qcat7#search/anca.muscholl%40u-bordeaux.fr/FMfcgxwLtGsWZGhGxJfZlzsVGCctLmQV?projector=1&messagePartId=0.1.1 + + 2010's :: reactions (SciHub, 2011; [[https://www.coalition-s.org/][Plan S]], 2018) and transformations ([[https://www.ouvrirlascience.fr/transformative-agreements-what-effects-on-the-economics-of-academic-publishing/][not so easy]])\pause + \hfill TL;DR: see [[https://hal.archives-ouvertes.fr/hal-03362932][my viewpoint in 2005]] and [[https://blog.sigplan.org/2020/01/14/what-is-a-sustainable-path-to-open-access/][the SIGPLAN blog in 2020]] \pause +*** Open Data (much less painful story) + + 1957-1958: International Geophysical Year shows the way\pause + + 2006 (and 2021): OECD recommendation on [[https://www.oecd.org/sti/recommendation-access-to-research-data-from-public-funding.htm][publicly funded research data]]\pause + + 2016 and later: FAIR terminology (/focus on metadata, sort of forgets open.../) + + diff --git a/common/modules/prelude-toc.org b/common/modules/prelude-toc.org index d24a74b..9dccba1 100644 --- a/common/modules/prelude-toc.org +++ b/common/modules/prelude-toc.org @@ -1,104 +1,104 @@ #+BEAMER_HEADER: \titlegraphic{\includegraphics[width=\extblockscale{0.7\textwidth}]{SWH-logo+motto}} #+STARTUP: hidestars # activate org-beamer-mode minor mode automatically #+STARTUP: beamer # org export options #+LANGUAGE: en #+OPTIONS: H:2 num:t toc:nil \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t #+OPTIONS: TeX:t LaTeX:t skip:nil d:nil todo:t pri:nil tags:not-in-toc #+EXPORT_SELECT_TAGS: export #+EXPORT_EXCLUDE_TAGS: noexport #+LINK_UP: #+LINK_HOME: #+LaTeX_CLASS: beamer #+LaTeX_CLASS_OPTIONS: [presentation,xcolor=table] # # important font choice! # #+LaTeX_HEADER: \usepackage{libertine} #+LATEX_HEADER: \usepackage{bbding} # # Let's move that logo... # #+LaTeX_HEADER: \usepackage{animate} #+COLUMNS: %40ITEM %10BEAMER_env(Env) %9BEAMER_envargs(Env Args) %10BEAMER_act(Act) %4BEAMER_col(Col) %10BEAMER_extra(Extra) %8BEAMER_opt(Opt) # have the theme desired #+latex_header: \mode{\usetheme{swh} \beamertemplatenavigationsymbolsempty \setbeamertemplate{navigation symbols}{} \setbeamertemplate{headline}{} #+latex_header: \setbeamertemplate{footline} #+latex_header: { #+latex_header: \leavevmode% #+latex_header: \hbox{% #+latex_header: \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.25ex,dp=1ex,center]{author in head/foot}% #+latex_header: \usebeamerfont{author in head/foot}\insertshortauthor%~~\beamer@ifempty{\insertshortinstitute}{}{(\insertshortinstitute)} #+latex_header: \end{beamercolorbox}% #+latex_header: \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.25ex,dp=1ex,right]{title in head/foot}% #+latex_header: \usebeamerfont{title in head/foot}\insertshorttitle{}\hspace*{2em} #+latex_header: \usebeamerfont{date in head/foot}\insertshortdate{}\hspace*{2em} #+latex_header: \insertframenumber{} / \inserttotalframenumber\hspace*{2ex} #+latex_header: \end{beamercolorbox}}% #+latex_header: \vskip0pt% #+latex_header: } #+latex_header: } # some color -#+latex_header: \rowcolors[]{1}{blue!10}{blue!05} +# #+latex_header: \rowcolors[]{1}{blue!10}{blue!05} # no longer works with texlive >= 2022 # # to have a toc for each section # # Use suggestions from http://web.stanford.edu/~dgleich/notebook/2009/05/appendix_slides_in_beamer_cont_1.html to avoid counting tocs in page number # #+latex_header: \AtBeginSection[] {\begin{frame}<*> \frametitle{Outline} \tableofcontents[currentsection]\end{frame} \addtocounter{framenumber}{-1}} # set the paths for images #+latex_header: \graphicspath{% #+latex_header: {../../common/images/}{../../common/logos/}% #+latex_header: {pics/}{../images/}{../../images/}{../pics/}{../../pics/}% #+latex_header: {../figures/}{../../figures/}{../logos/}{../../logos/}{../../../logos/}% #+latex_header: {../../communication/web/graphics/carousel/}% #+latex_header: {../../communication/web/graphics/pictos/png/400x400/}% #+latex_header: } # some default information I did not find how to set this in org-mode # to add the picblock macro #+latex_header: \usepackage{extblocks} #+latex_header: \usepackage{pgfpages} #+latex_header: \usepackage{animate} #+latex_header: \usepackage{alltt} # # Itemize in multiple columns # #+latex_header: \usepackage{multicol} # # Requires # # http://www-ljk.imag.fr/membres/Jerome.Lelong/latex/appendixnumberbeamer.sty #+latex_header: \usepackage{appendixnumberbeamer} # # Colors, color boxes # #+latex_header: \usepackage{color} #+latex_header: \usepackage{soul} # http://tex.stackexchange.com/questions/41683/why-is-it-that-coloring-in-soul-in-beamer-is-not-visible #+latex_header: \makeatletter #+latex_header: \newcommand\SoulColor{% #+latex_header: \let\set@color\beamerorig@set@color #+latex_header: \let\reset@color\beamerorig@reset@color} #+latex_header: \makeatother #+latex_header: \SoulColor #+LATEX_HEADER: \usepackage{listings} #+LATEX_HEADER: \usepackage{forcebeamermode} # # Color of links # #+LATEX_HEADER: \hypersetup{colorlinks,linkcolor=,urlcolor=cyan} diff --git a/common/modules/prelude.org b/common/modules/prelude.org index 657428c..42ef69e 100644 --- a/common/modules/prelude.org +++ b/common/modules/prelude.org @@ -1,96 +1,96 @@ #+BEAMER_HEADER: \titlegraphic{\includegraphics[width=\extblockscale{0.7\textwidth}]{SWH-logo+motto}} #+STARTUP: hidestars # activate org-beamer-mode minor mode automatically #+STARTUP: beamer # org export options #+LANGUAGE: en #+OPTIONS: H:2 num:t toc:nil \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t #+OPTIONS: TeX:t LaTeX:t skip:nil d:nil todo:t pri:nil tags:not-in-toc #+EXPORT_SELECT_TAGS: export #+EXPORT_EXCLUDE_TAGS: noexport #+LINK_UP: #+LINK_HOME: #+LaTeX_CLASS: beamer #+LaTeX_CLASS_OPTIONS: [presentation,xcolor=table] # # important font choice! # #+LaTeX_HEADER: \usepackage{libertine} # # Let's move that logo... # #+LaTeX_HEADER: \usepackage{animate} #+COLUMNS: %40ITEM %10BEAMER_env(Env) %9BEAMER_envargs(Env Args) %10BEAMER_act(Act) %4BEAMER_col(Col) %10BEAMER_extra(Extra) %8BEAMER_opt(Opt) # have the theme desired #+latex_header: \mode{\usetheme{swh} \beamertemplatenavigationsymbolsempty \setbeamertemplate{navigation symbols}{} \setbeamertemplate{headline}{} #+latex_header: \setbeamertemplate{footline} #+latex_header: { #+latex_header: \leavevmode% #+latex_header: \hbox{% #+latex_header: \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.25ex,dp=1ex,center]{author in head/foot}% #+latex_header: \usebeamerfont{author in head/foot}\insertshortauthor%~~\beamer@ifempty{\insertshortinstitute}{}{(\insertshortinstitute)} #+latex_header: \end{beamercolorbox}% #+latex_header: \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.25ex,dp=1ex,right]{title in head/foot}% #+latex_header: \usebeamerfont{title in head/foot}\insertshorttitle{}\hspace*{2em} #+latex_header: \usebeamerfont{date in head/foot}\insertshortdate{}\hspace*{2em} #+latex_header: \insertframenumber{} / \inserttotalframenumber\hspace*{2ex} #+latex_header: \end{beamercolorbox}}% #+latex_header: \vskip0pt% #+latex_header: } #+latex_header: } # some color -#+latex_header: \rowcolors[]{1}{blue!10}{blue!05} +# #+latex_header: \rowcolors[]{1}{blue!10}{blue!05} # no longer works with texlive >= 2022 # set the paths for images #+latex_header: \graphicspath{% #+latex_header: {../../common/images/}{../../common/logos/}% #+latex_header: {pics/}{../images/}{../../images/}{../pics/}{../../pics/}% #+latex_header: {../figures/}{../../figures/}{../logos/}{../../logos/}{../../../logos/}% #+latex_header: {../../communication/web/graphics/carousel/}% #+latex_header: {../../communication/web/graphics/pictos/png/400x400/}% #+latex_header: } # some default information I did not find how to set this in org-mode # to add the picblock macro #+latex_header: \usepackage{extblocks} #+latex_header: \usepackage{pgfpages} #+latex_header: \usepackage{animate} #+latex_header: \usepackage{alltt} # # Itemize in multiple columns # #+latex_header: \usepackage{multicol} # # Requires # # http://www-ljk.imag.fr/membres/Jerome.Lelong/latex/appendixnumberbeamer.sty #+latex_header: \usepackage{appendixnumberbeamer} # # Colors, color boxes # #+latex_header: \usepackage{color} #+latex_header: \usepackage{soul} # http://tex.stackexchange.com/questions/41683/why-is-it-that-coloring-in-soul-in-beamer-is-not-visible #+latex_header: \makeatletter #+latex_header: \newcommand\SoulColor{% #+latex_header: \let\set@color\beamerorig@set@color #+latex_header: \let\reset@color\beamerorig@reset@color} #+latex_header: \makeatother #+latex_header: \SoulColor #+LATEX_HEADER: \usepackage{listings} #+LATEX_HEADER: \usepackage{forcebeamermode} # # Color of links # #+LATEX_HEADER: \hypersetup{colorlinks,linkcolor=,urlcolor=cyan} diff --git a/common/modules/swh-ardc.org b/common/modules/swh-ardc.org index 38cc678..4a70d33 100644 --- a/common/modules/swh-ardc.org +++ b/common/modules/swh-ardc.org @@ -1,421 +1,504 @@ #+COLUMNS: %40ITEM %10BEAMER_env(Env) %9BEAMER_envargs(Env Args) %10BEAMER_act(Act) %4BEAMER_col(Col) %10BEAMER_extra(Extra) %8BEAMER_opt(Opt) # # Software is all around us # #+INCLUDE: "prelude.org" :minlevel 1 #+INCLUDE: "169.org" * Source code pillar of Open Science, and how Software Heritage addresses ARDC :PROPERTIES: :CUSTOM_ID: main :END: ** Source code is /special/ (software is /not/ data) :PROPERTIES: :CUSTOM_ID: swnotdata :END: *** /Executable/ and /human readable/ knowledge \hfill copyright law :noexport: /“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 + /research software/ a thin top layer - sophisticated /developer communities/ *** :B_ignoreheading: :PROPERTIES: :BEAMER_env: ignoreheading :END: #+BEAMER: \pause *** Precious, endangered /executable/ and /human readable/ knowledge key people *passing away*, platforms (GoogleCode, Gitorious, etc.) closing down ...\\ \hfill no organised effort to catalog and archive it ** Source code is /special/, cont'd :PROPERTIES: :CUSTOM_ID: swnotdatacontd :END: *** Software is complex - Structure :: monolithic/composite; self-contained/external dependencies - Lifetime :: one-shot/long term - Community :: one man/one team/distributed community - Authorship :: multiple roles: Architecture, Management, Development, Documentation, Testing, ... - Authority :: institutions/organizations/communities/single person #+BEAMER: \pause *** Versioning, granularity - Project :: “Inria created OCaml and Scikit-learn”\pause - Release :: “2D Voronoi Diagrams were introduced in CGAL 3.1.0”\pause - Exact state of a project :: “This result was produced using commit 0064fbd...”\pause - Code fragment :: “The core algorithm is in lines 101 to 143 of the file parmap.ml contained in the precise state of the project corresponding to commit 0064fbd....” ** Software Source code: pillar of Open Science, multiple needs :PROPERTIES: :CUSTOM_ID: pillaropensciencecompact :END: *** Three pillars of Open Science :B_block: :PROPERTIES: :BEAMER_env: block :BEAMER_COL: .4 :END: #+latex: \begin{center} #+ATTR_LATEX: :width \extblockscale{1.2\linewidth} file:PreservationTriangle.png #+latex: \end{center} #+BEAMER: \pause *** A plurality of needs :B_block: :PROPERTIES: :BEAMER_env: block :BEAMER_COL: .6 :END: - Researcher :: - *archive* and *reference* software used in articles - *find* useful software - get *credit* for developed software - verify/reproduce/improve results #+BEAMER: \pause - Laboratory/team :: track software contributions - produce reports / web page #+BEAMER: \pause - Research Organization :: know its *software assets* - technology *transfer* - impact *metrics* ** Software Source code: a pillar of Open Science :PROPERTIES: :CUSTOM_ID: pillaropenscience :END: #+BEAMER: \vspace{-.5em} *** Software powers modern research :B_picblock: :PROPERTIES: :BEAMER_opt: pic=papermountain, leftpic=true, width=.4\linewidth :BEAMER_env: picblock :BEAMER_COL: .64 :END: #+BEGIN_QUOTE [...] software [...] essential in their fields. \mbox{}\hfill Top 100 papers (Nature, 2014) \vspace{.5em} #+END_QUOTE #+BEGIN_QUOTE Sometimes, if you dont have the software, you dont have the data \mbox{}\hfill Christine Borgman, Paris, 2018 #+END_QUOTE # http://www.nature.com/news/the-top-100-papers-1.16224 #+BEAMER: \pause -*** Missing pillar: software (source code) :B_block: +*** A key pillar: software (source code) :B_block: :PROPERTIES: :BEAMER_COL: .42 :BEAMER_env: block :END: #+latex: \begin{center} #+ATTR_LATEX: :width \extblockscale{1.2\linewidth} file:preservation_triangle_color.png #+latex: \end{center} #+BEAMER: \pause \hfill The links in the picture are *important* *** :B_ignoreheading: :PROPERTIES: :BEAMER_env: ignoreheading :END: #+BEAMER: \pause *** Nota Bene software may be a /tool/, a /research outcome/ and a /research object/\pause\\ \hfill access to the /source code/ is essential! ** A plurality of needs :PROPERTIES: :CUSTOM_ID: userneeds :END: *** Researchers **** :B_column: :PROPERTIES: :BEAMER_env: column :BEAMER_COL: .58 :END: - *archive* and *reference* software used in articles - *find* useful software **** :B_column: :PROPERTIES: :BEAMER_env: column :BEAMER_COL: .46 :END: - get *credit* for developed software - verify, *reproduce*, improve results #+BEAMER: \pause *** Laboratories/teams **** :B_column: :PROPERTIES: :BEAMER_env: column :BEAMER_COL: .4 :END: - *track* software contributions **** :B_column: :PROPERTIES: :BEAMER_env: column :BEAMER_COL: .5 :END: - produce reports - maintain web page #+BEAMER: \pause *** Research Organization know its *software assets* **** :B_column: :PROPERTIES: :BEAMER_env: column :BEAMER_COL: .4 :END: + technology *transfer* + impact *metrics* **** :B_column: :PROPERTIES: :BEAMER_env: column :BEAMER_COL: .5 :END: + funding *strategy* + career *evaluation* ** What is at stake: ARDC \hfill in increasing order of difficulty :PROPERTIES: :CUSTOM_ID: ardc :END: *** Archive Research software artifacts must be properly *archived*\\ \hfill make sure we can /retrieve/ them (/reproducibility/) #+BEAMER: \pause *** :B_ignoreheading: :PROPERTIES: :BEAMER_env: ignoreheading :END: \vspace{-.5em} *** Reference Research software artifacts must be properly *referenced*\\ \hfill make sure we can /identify/ them (/reproducibility/) #+BEAMER: \pause *** :B_ignoreheading: :PROPERTIES: :BEAMER_env: ignoreheading :END: \vspace{-.5em} *** Describe Research software artifacts must be properly *described*\\ \hfill make it easy to /discover/ and /reuse/ them (/visibility/) #+BEAMER: \pause *** :B_ignoreheading: :PROPERTIES: :BEAMER_env: ignoreheading :END: \vspace{-.5em} *** Cite/Credit Research software artifacts must be properly *cited* /(not the same as referenced!)/\\ \hfill to give /credit/ to authors (/evaluation/!) *** :B_ignoreheading: :PROPERTIES: :BEAMER_env: ignoreheading :END: ** What is at stake: before ARDC :PROPERTIES: :CUSTOM_ID: beforeardc :END: *** Development practices and tools - version control system - key metadata information (README, AUTHORS, LICENCE, etc.) - build system - test suites - continuous integration - ... *** Opening up - documentation - community building - ... *** needs proper training, and identification of best practices ** What is at stake: beyond ARDC :PROPERTIES: :CUSTOM_ID: beyondardc :END: *** Policy framework for dissemination, reuse, evaluation and recognition Define and promote an open source policy for publicly funded research software, including incentives and recognition for researchers and engineers #+BEAMER: \pause *** Sustainability Organisational schemas, legal tools, economic models, processes and policies to ensure research software can be maintained and sustained over time #+BEAMER: \pause *** Technology transfer and industry collaboration Approaches, support, methods, processes to establish connections with industry in order to foster uptake and transfer of research software #+BEAMER: \pause *** Advanced technologies and tools software quality reproducibility, and traceability (including plagiarism detection) ** What is at stake: beyond ARDC :PROPERTIES: :CUSTOM_ID: beyondardc-evaluation :END: *** Sustainability, technology transfer Organisational schemas, legal tools, economic models, processes and policies to ensure research software can be maintained and sustained over time, maybe in connection with industry #+BEAMER: \pause *** Evaluation (funding, careers, etc.) \hfill beware of /naive software citation counting/! + human-in-the-loop evaluation (see the [[https://www-enseignementsup--recherche-gouv-fr.translate.goog/fr/remise-des-prix-science-ouverte-du-logiciel-libre-de-la-recherche-83576?_x_tr_sl=fr&_x_tr_tl=en&_x_tr_hl=en-US&_x_tr_pto=wapp][French National Prize]]) + identify /roles/ in software projects, see: #+BEGIN_EXPORT latex \begin{thebibliography}{Foo Bar, 1969} \footnotesize \bibitem{alliez:hal-02135891} P. Alliez, R. Di Cosmo, B. Guedj, A. Girault, M.-S. Hacid, A. Legrand and N. Rougier\newblock \emph{Attributing and referencing (research) software: Best practices and outlook from Inria}, \newblock CiSE 2020 \href{https://doi.ieeecomputersociety.org/10.1109/MCSE.2019.2949413}{(10.1109/MCSE.2019.2949413)} \end{thebibliography} #+END_EXPORT #+BEAMER: \pause *** Regulations are coming software management plans, licensing, metadata and identification standards ** Addressing the four ARDC needs (see [[https://dx.doi.org/10.1007/978-3-030-52200-1_36][ICMS 2020]] for details) :PROPERTIES: :CUSTOM_ID: swh-ardc-short :END: *** Archive (12B+ files, 170M+ projects) :PROPERTIES: :BEAMER_env: block :BEAMER_COL: .5 :END: #+ATTR_LATEX: :width .8\linewidth file:swh-dataflow-merkle.pdf \vspace{-1em} #+BEAMER: \pause - [[https://save.softwareheritage.org][save.softwareheritage.org]] - [[https://deposit.softwareheritage.org][deposit.softwareheritage.org]] # (HAL, IPOL) #+BEAMER: \pause *** Reference (20 billion SWHIDs) :B_block: :PROPERTIES: :BEAMER_env: block :BEAMER_COL: .5 :END: [[https://www.softwareheritage.org/2020/07/09/intrinsic-vs-extrinsic-identifiers/][Intrinsic, decentralised, cryptographically strong identifiers, SWHIDs]] \vspace{-1em} #+ATTR_LATEX: :width 1.02\linewidth file:SWHID-v1.4_3.png Now supported [[https://www.softwareheritage.org/2020/05/13/swhid-adoption/][in SPDX 2.2, Wikidata]] etc. #+BEAMER: \pause *** :B_ignoreheading: :PROPERTIES: :BEAMER_env: ignoreheading :END: *** Describe :B_block: :PROPERTIES: :BEAMER_env: block :BEAMER_COL: .5 :END: - /Intrinsic metadata/ from source code - Contributed the [[https://codemeta.github.io/codemeta-generator/][Codemeta generator]] #+BEAMER: \pause *** Cite/Credit :B_block: :PROPERTIES: :BEAMER_env: block :BEAMER_COL: .5 :END: - Contributed /software citation/ style [[https://www.ctan.org/tex-archive/macros/latex/contrib/biblatex-contrib/biblatex-software][biblatex-software, v 1.2-2 now on CTAN]] ** Addressing the A(archive) in ARDC (see [[https://dx.doi.org/10.1007/978-3-030-52200-1_36][ICMS 2020]] for details) :PROPERTIES: :CUSTOM_ID: swh-a :END: #+latex: \vspace{-0.8em} *** /Universal/ source code archive \hfill /not only research/ \hfill (12B+ files, 170M+ projects) :PROPERTIES: :BEAMER_env: block :END: #+ATTR_LATEX: :width .6\linewidth file:swh-dataflow-merkle.pdf #+latex: \vspace{-1em} - your research software /is likely there already/! #+BEAMER: \pause - anyone can trigger archival with [[https://save.softwareheritage.org][save.softwareheritage.org]] #+BEAMER: \pause - selected partners can push to the archive via [[https://deposit.softwareheritage.org][deposit.softwareheritage.org]] # (HAL, IPOL) ** Addressing the R(eference) in ARDC (see [[https://dx.doi.org/10.1007/978-3-030-52200-1_36][ICMS 2020]] for details) :PROPERTIES: :CUSTOM_ID: swh-r :END: #+latex: \vspace{-0.8em} *** Software Heritage Identifiers (SWHID) \hfill [[https://docs.softwareheritage.org/devel/swh-model/persistent-identifiers.html][link to full docs]] :B_block: :PROPERTIES: :BEAMER_env: block :END: 20+B [[https://www.softwareheritage.org/2020/07/09/intrinsic-vs-extrinsic-identifiers/][intrinsic, decentralised, cryptographically strong identifiers, SWHIDs]] # #+INCLUDE: "../../common/modules/swh-id-syntax.org::#swh-id-syntax" :only-contents t :minlevel 3 #+LATEX: \centering%\forcebeamerstart #+LATEX: \mode{\only<1>{\includegraphics[width=0.8\linewidth]{SWHID-v1.4_1.png}}} #+LATEX: \mode{\only<2>{\includegraphics[width=0.8\linewidth]{SWHID-v1.4_2.png}}} #+LATEX: \only<3->{\includegraphics[width=0.8\linewidth]{SWHID-v1.4_3.png}} #+LATEX: %\forcebeamerend *** vspace :B_ignoreheading: :PROPERTIES: :BEAMER_env: ignoreheading :END: #+latex: \vspace{-0.5em} *** :PROPERTIES: :BEAMER_act: <4-> :BEAMER_env: block :END: Emerging standard : Linux Foundation [[https://spdx.github.io/spdx-spec/appendix-VI-external-repository-identifiers/#persistent-id][SPDX 2.2]]; IANA registered; WikiData [[https://www.wikidata.org/wiki/Property:P6138][P6138]] *** vspace :B_ignoreheading: :PROPERTIES: :BEAMER_env: ignoreheading :END: #+latex: \vspace{-0.5em} *** Full fledged /source code references/ for reproducibility :B_block: :PROPERTIES: :BEAMER_act: <5-> :BEAMER_env: block :END: Examples: [[https://archive.softwareheritage.org/swh:1:cnt:64582b78792cd6c2d67d35da5a11bb80886a6409;origin=https://github.com/virtualagc/virtualagc;lines=245-261/][Apollo 11 AGC excerpt]], [[https://archive.softwareheritage.org/swh:1:cnt:bb0faf6919fc60636b2696f32ec9b3c2adb247fe;origin=https://github.com/id-Software/Quake-III-Arena;lines=549-572/][Quake III rsqrt]]; Guidelines available, see [[https://dx.doi.org/10.1007/978-3-030-52200-1_36][ICMS 2020]] ** Addressing D(escribe) and C(ite) in ARDC (see [[https://dx.doi.org/10.1007/978-3-030-52200-1_36][ICMS 2020]] for details) :PROPERTIES: :CUSTOM_ID: swh-dc :END: *** Describe :B_block: :PROPERTIES: :BEAMER_env: block :BEAMER_COL: .5 :END: - Collect /intrinsic metadata/ - Contributed the [[https://codemeta.github.io/codemeta-generator/][Codemeta generator]] #+ATTR_LATEX: :width .8\linewidth file:CodeMetaGenerator.png #+BEAMER: \pause *** Cite/Credit :B_block: :PROPERTIES: :BEAMER_env: block :BEAMER_COL: .5 :END: - Contributed /software citation/ style [[https://www.ctan.org/tex-archive/macros/latex/contrib/biblatex-contrib/biblatex-software][biblatex-software, v 1.2-2 now on CTAN]] #+ATTR_LATEX: :width .8\linewidth file:BibLaTeX-swh.png ** ARDC Best practices :PROPERTIES: :CUSTOM_ID: ardc-best-france :END: *** Archiving and referencing For *all source code* used in research (/yes, even small scripts!/) - ensure it is archived in Software Heritage (see [[https://save.softwareheritage.org/][save code now]]) - get the proper *SWHID* for your software (see [[https://www.softwareheritage.org/howto-archive-and-reference-your-code/][detailed HOWTO]]) - add it to research articles for reproducibility (see [[https://www.softwareheritage.org/howto-archive-and-reference-your-code/][detailed HOWTO]]) #+BEAMER: \pause *** Describing and Citing/Crediting For *software you want to put forward* (/mention in your CV, reports, etc., get citations and credit for it/), do the following *extra steps*: - add *codemeta.json* with description (see the [[https://codemeta.github.io/codemeta-generator/][codemeta generator]]) - reference in the HAL portal (french partners, see [[https://doc.archives-ouvertes.fr/en/deposit/deposit-software-source-code/][online HAL documentation]]) - cite software using the [[https://ctan.org/pkg/biblatex-software][biblatex-software]] package (in CTAN and TeXLive) + +** Demo walkthrough for Open Science + :PROPERTIES: + :CUSTOM_ID: demoswhhal + :END: + - Browse [[https://archive.softwareheritage.org][the archive]] (your work [[https://twitter.com/gabrielaltay/status/1300218789762662401][may be already there]] !) + - [[https://save.softwareheritage.org][Trigger archival]] of your preferred software in a breeze + - Get and use SWHIDs ([[https://docs.softwareheritage.org/devel/swh-model/persistent-identifiers.html][full specification available online]]) + - Cite software using the [[https://ctan.org/pkg/biblatex-software?lang=en][biblatex-software]] package from CTAN + - Example in a journal: [[http://www.ipol.im/pub/art/2020/300/][an article from IPOL]] + - Example with Parmap: [[https://github.com/rdicosmo/parmap/][devel on Github]], [[https://archive.softwareheritage.org/browse/origin/directory/?origin_url=https://github.com/rdicosmo/parmap][archive in SWH]], [[https://hal.archives-ouvertes.fr/hal-03516539v1][curated deposit in HAL]] + - Extracting all the software products [[https://haltools.archives-ouvertes.fr/Public/afficheRequetePubli.php?struct=inria&&typdoc=(%27SOFTWARE%27)&CB_auteur=oui&CB_titre=oui&CB_article=oui&CB_resume=oui&langue=Anglais&tri_exp=annee_publi&tri_exp2=typdoc&tri_exp3=date_publi&ordre_aff=TA&Fen=Aff&css=../css/VisuRubriqueEncadre.css][for Inria]], [[https://haltools.archives-ouvertes.fr/Public/afficheRequetePubli.php?struct=cnrs&typdoc=(%27SOFTWARE%27)&CB_auteur=oui&CB_titre=oui&CB_article=oui&CB_resume=oui&langue=Anglais&tri_exp=annee_publi&tri_exp2=typdoc&tri_exp3=date_publi&ordre_aff=TA&Fen=Aff&css=../css/VisuRubriqueEncadre.css][for CNRS]], [[https://haltools.archives-ouvertes.fr/Public/afficheRequetePubli.php?struct=LIRMM&typdoc=(%27SOFTWARE%27)&CB_auteur=oui&CB_titre=oui&CB_article=oui&CB_resume=oui&langue=Anglais&tri_exp=annee_publi&tri_exp2=typdoc&tri_exp3=date_publi&ordre_aff=TA&Fen=Aff&css=../css/VisuRubriqueEncadre.css][for LIRMM]] or [[https://haltools.archives-ouvertes.fr/Public/afficheRequetePubli.php?auteur_exp=remi%2C+gribonval&struct=cnrs&typdoc=(%27SOFTWARE%27)&CB_auteur=oui&CB_titre=oui&CB_article=oui&CB_resume=oui&langue=Anglais&tri_exp=annee_publi&tri_exp2=typdoc&tri_exp3=date_publi&ordre_aff=TA&Fen=Aff&css=../css/VisuRubriqueEncadre.css][for Rémi Gribonval]] using HalTools + - [[https://doc.archives-ouvertes.fr/en/deposit/deposit-software-source-code/][Curated deposit in SWH via HAL]], see for example: + [[https://hal.archives-ouvertes.fr/hal-02130801][LinBox]], [[https://hal.archives-ouvertes.fr/hal-01897934][SLALOM]], [[https://hal.archives-ouvertes.fr/hal-02130729][Givaro]], [[https://hal.archives-ouvertes.fr/hal-02137040][NS2DDV]], [[https://hal.archives-ouvertes.fr/lirmm-02136558][SumGra]], [[https://hal.archives-ouvertes.fr/hal-02155786][Coq proof]], ... + - Example use in a research article: compare Fig. 1 and conclusions + - in [[http://www.dicosmo.org/Articles/2012-DaneluttoDiCosmo-Pcs.pdf][the 2012 version]] + - in [[https://www.dicosmo.org/share/parmap_swh.pdf][the updated version]] using SWHIDs and Software Heritage + - Example use in a research article: extensive use of SWHIDs in [[https://www.dicosmo.org/Articles/2020-ReScienceC.pdf][a replication experiment]] +** Overview of the Software Heritage / HAL synergy + :PROPERTIES: + :CUSTOM_ID: halswhoverview + :END: + #+ATTR_LATEX: :width \linewidth + file:hal-swh-overview.png +** Preservation case: 250.000+ BitBucket repositories + :PROPERTIES: + :CUSTOM_ID: bitbucket + :END: +*** Saving the 250.000+ endangered repositories... + - summer 2019: BitBucket announce Mercurial VCS phase out + - fall 2019: Software Heritage teams up with Octobus (funded by NLNet, thanks!) + - july 2020: BitBucket erases /250.000+/ repositories + - august 2020: [[https://bitbucket-archive.softwareheritage.org][bitbucket-archive.softwareheritage.org]] is live + - 2021: all this is ingested in [[https://archive.softwareheritage.org][archive.softwareheritage.org]] +#+BEAMER: \pause +*** ... preserving the web of knowledge \hfill (original tweet [[https://twitter.com/gabrielaltay/status/1300218789762662401][is here]] ) :B_picblock: + :PROPERTIES: + :BEAMER_env: picblock + :BEAMER_OPT: pic=bitbucket_swh_praise.png, width=.6\linewidth, leftpic=true + :END: + +\\ + *Bottomline*\\ + /explicit deposit/ is important, ...\\ + \mbox{}\hfill ... and we must promote it...\hfill\mbox{}\\ + \mbox{}\hfill ... but will never be enough.\\ +\mbox{}\\ +\mbox{}\hfill /(think also of all software dependencies!)/ + +* Compact version +** What is at stake + :PROPERTIES: + :CUSTOM_ID: compactstakes + :END: +*** ARDC :B_block: + :PROPERTIES: + :BEAMER_COL: .33 + :BEAMER_env: block + :END: + - *Archive* for retrieval (/reproducibility/) + - *Reference* for identification (/reproducibility/) + - *Describe* for discovery and reuse + - *Cite/Credit* for credit and evaluation + #+BEAMER: \pause +*** Before ARDC + :PROPERTIES: + :BEAMER_COL: .33 + :BEAMER_env: block + :END: + - *Development* practices and tools (VCS, build system, test suites, CI, ...) + - *Opening up* towards a community (documentation, organization, communication) + Need training, best practices + #+BEAMER: \pause +*** Beyond ARDC + :PROPERTIES: + :CUSTOM_ID: beyondardc + :BEAMER_COL: .33 + :BEAMER_env: block + :END: + - *Policies* (dissemination, reuse, careers!) + - *Sustainability* (legal, economic etc.) + - Technology transfer + - Advanced technologies and tools (quality, traceability, etc.) diff --git a/talks-public/2015-11-02-dagstuhl/2015-11-02-dagstuhl.org b/talks-public/2015-11-02-dagstuhl/2015-11-02-dagstuhl.org index e730381..a40d493 100644 --- a/talks-public/2015-11-02-dagstuhl/2015-11-02-dagstuhl.org +++ b/talks-public/2015-11-02-dagstuhl/2015-11-02-dagstuhl.org @@ -1,243 +1,243 @@ #+STARTUP: hidestars #+TITLE: Preserving Software for Science #+SUBTITLE: Preserving the technological knowledge of mankind #+AUTHOR: Roberto Di Cosmo #+DATE: 2/11/2015 #+EMAIL: roberto@dicosmo.org #+DESCRIPTION: Preserving the technological knowledge of mankind #+KEYWORDS: software heritage legacy preservation knowledge mankind technology #+BEAMER_HEADER: \titlegraphic{\includegraphics[height=1.5cm]{SWH}} # org export options #+LANGUAGE: en #+OPTIONS: H:2 num:t toc:nil \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t #+OPTIONS: TeX:t LaTeX:t skip:nil d:nil todo:t pri:nil tags:not-in-toc #+EXPORT_SELECT_TAGS: export #+EXPORT_EXCLUDE_TAGS: noexport #+LINK_UP: #+LINK_HOME: # activate org-beamer-mode minor mode automatically #+STARTUP: beamer #+LaTeX_CLASS: beamer #+LaTeX_CLASS_OPTIONS: [presentation,xcolor=table] # # important font choice! # #+LaTeX_HEADER: \usepackage{libertine} #+COLUMNS: %40ITEM %10BEAMER_env(Env) %9BEAMER_envargs(Env Args) %4BEAMER_col(Col) %10BEAMER_extra(Extra) # have the theme desired #+latex_header: \mode{\usetheme{swh} \beamertemplatenavigationsymbolsempty \setbeamertemplate{navigation symbols}{} \setbeamertemplate{headline}{} #+latex_header: \setbeamertemplate{footline} #+latex_header: { #+latex_header: \leavevmode% #+latex_header: \hbox{% #+latex_header: \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.25ex,dp=1ex,center]{author in head/foot}% #+latex_header: \usebeamerfont{author in head/foot}\insertshortauthor%~~\beamer@ifempty{\insertshortinstitute}{}{(\insertshortinstitute)} #+latex_header: \end{beamercolorbox}% #+latex_header: \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.25ex,dp=1ex,right]{title in head/foot}% #+latex_header: \usebeamerfont{title in head/foot}\insertshorttitle{}\hspace*{2em} #+latex_header: \usebeamerfont{date in head/foot}\insertshortdate{}\hspace*{2em} #+latex_header: \insertframenumber{} / \inserttotalframenumber\hspace*{2ex} #+latex_header: \end{beamercolorbox}}% #+latex_header: \vskip0pt% #+latex_header: } #+latex_header: } # some color -#+latex_header: \rowcolors[]{1}{blue!10}{blue!05} +# #+latex_header: \rowcolors[]{1}{blue!10}{blue!05} # no longer works with texlive >= 2022 # to have a toc for each section #+latex_header: \AtBeginSection[] {\begin{frame} \frametitle{Outline} \tableofcontents[currentsection]\end{frame} } # set the paths for images #+latex_header: \graphicspath{{../../common/images/}{../../common/logos/}{pics/}{../images/}{../../images/}{../pics/}{../../pics/}{../figures/}{../../figures/}{../logos/}{../../logos/}} # some default information I did not find how to set this in org-mode #+latex_header: \institute[Irill/INRIA/UPD]{\url{roberto@dicosmo.org}} # to add the picblock macro #+latex_header: \usepackage{extblocks} #+latex_header: \usepackage{pgfpages} #+latex_header: \usepackage{animate} * Reproducibility ** Reproducibility is a complex goal *** Many issues at stake :PROPERTIES: :BEAMER_act: +- :END: - /Availability/ - /Traceability/ - Environment - Automation - Documentation - Understanding ( including Open Source) *** :PROPERTIES: :BEAMER_act: +- :END: The first two are important /software preservation issues/.\\ Yes, code is fragile:\\ \mbox{}\hfill it can be destroyed, and we can loose trace of it ** The Knowledge Conservancy Magic Triangle *** The Knowledge Conservancy Magic Triangle :PROPERTIES: :BEAMER_act: +- :END: #+latex: \begin{center} #+ATTR_LATEX: :width .5\linewidth file:PreservationTriangle.png #+latex: \end{center} *** Legenda :PROPERTIES: :BEAMER_act: +- :END: - articles: ArXiv, HAL, ... - data: Zenodo, ... - software: /Software Heritage/ to the rescue \mbox{} \hfill Links are important! * Bits from the drawing board ** Need CS point of view! *** lot of digital preservation initiatives - RDA - Zenodo - Internet Archive *** Software is different - dependencies - evolution *** but let's be short - only cover preservation /in general/ ** Free an Open Source Software is crucial *** D. Rosenthal, EUDAT, 9/2014 :PROPERTIES: :BEAMER_act: +- :END: #+latex: \begin{quote} you have to do [digital preservation] with open-source software; closed-source preservation has the same fatal "just trust me" aspect that closed-source encryption (and cloud storage) suffer from. #+latex: \end{quote} *** recommendation :PROPERTIES: :BEAMER_act: +- :END: our preferred platform(s) should: - provide full details on their architecture - make available all the source code used - use open standards - encourage a collaborative development process ** Web links /are not/ permanent (even /permalinks/) *** T. Berners-Lee et al. Uniform Resource Locators. RFC 1738. :PROPERTIES: :BEAMER_act: +- :END: #+latex: \begin{quote} Users should beware that there is no general guarantee that a URL which at one time points to a given object continues to do so, and does not even at some later time point to a different object due to the movement of objects on servers. #+latex: \end{quote} *** The Decay and Failures of URL References :PROPERTIES: :BEAMER_act: +- :END: #+latex: \begin{quote} half life of web references is 4 years\\ \hfill Diomidis Spinellis, CACM 2003 #+latex: \end{quote} *** recommendation :PROPERTIES: :BEAMER_act: +- :END: our preferred platform(s) should: - provide /intrinsic/ resource identifiers - /avoid/ intermediate index approaches like DOI ** Replication is the key *** Thomas Jefferson, February 18, 1791 :PROPERTIES: :BEAMER_act: +- :END: #+latex: \begin{quote} ...let us save what remains: not by vaults and locks which fence them from the public eye and use in consigning them to the waste of time, but by such a multiplication of copies, as shall place them beyond the reach of accident. #+latex: \end{quote} *** recommendation :PROPERTIES: :BEAMER_act: +- :END: our preferred platform(s) should: - provide easy means for making copies - encourage the growth of a mirror network (like ArXiv did) *** replication, not confusion! :PROPERTIES: :BEAMER_act: +- :END: - do not create /another archive/ of SW, become a /mirror node/! - to ensure sustainability, pool resources, do not divide them! ** Long term is important *** it cannot be just a project projects have limited time-frame *** it cannot be commercial business interests come and go *** it must be a shared concern - cultural heritage - scientific infrastructure - industrial infrastructure *** Unix philosophy do one thing, do it well * Software Heritage ** The Software Heritage Project #+latex: \begin{center} #+ATTR_LATEX: :width .9\linewidth file:SWH+baseline.png #+latex: \end{center} *** Our mission /Collect/, /organise/, /preserve/ and /share/ /all the software/ that lies at the heart of our culture and our society.\\[1em] ** Working on the foundations *** one infrastructure to build them all #+latex: \begin{center} #+ATTR_LATEX: :width .9\linewidth file:SWH-as-foundation.png #+latex: \end{center} ** Basic infos *** Status - in the works for one year - fully INRIA funded for now - active preliminary development - still /not public/ yet - will be announced soon (please be patient :-)) *** Yes, we're (going to be) open - open specification - open source - open process ** Need your help *** make it easy to integrate :PROPERTIES: :BEAMER_act: +- :END: - in development workflow - in publishing workflow *** make it ok to integrate, from the legal point of view :PROPERTIES: :BEAMER_act: +- :END: - make licences explicit - make licences of dependencies explicit *** make it sustainable :PROPERTIES: :BEAMER_act: +- :END: - support/sponsorship - open process - collaboration ** Stay tuned for https://www.softwareheritage.org * Motto :noexport: Archive all software artifacts /in the long term/, track their evolution over time, and make them readily accessible and /referenceable/ to the benefit of present and future generations. diff --git a/talks-public/2016-07-04-DebConf/2016-07-04-DebConf_new.org b/talks-public/2016-07-04-DebConf/2016-07-04-DebConf_new.org index 3311557..bab0ef7 100644 --- a/talks-public/2016-07-04-DebConf/2016-07-04-DebConf_new.org +++ b/talks-public/2016-07-04-DebConf/2016-07-04-DebConf_new.org @@ -1,498 +1,498 @@ #+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: Building the Universal Software Archive #+AUTHOR: Nicolas Dandrimont #+DATE: July 4th, 2016 #+EMAIL: olasd@softwareheritage.org #+DESCRIPTION: Preserving the technological knowledge of mankind #+KEYWORDS: software heritage legacy preservation knowledge mankind technology #+BEAMER_HEADER: \title[Software Heritage]{Software Heritage} #+BEAMER_HEADER: \titlegraphic{\includegraphics[width=0.7\textwidth]{SWH-logo}} #+STARTUP: hidestars # activate org-beamer-mode minor mode automatically #+STARTUP: beamer # org export options #+LANGUAGE: en #+OPTIONS: H:3 num:t toc:nil \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t #+OPTIONS: TeX:t LaTeX:t skip:nil d:nil todo:t pri:nil tags:not-in-toc #+EXPORT_SELECT_TAGS: export #+EXPORT_EXCLUDE_TAGS: noexport #+LINK_UP: #+LINK_HOME: #+LaTeX_CLASS: beamer #+LaTeX_CLASS_OPTIONS: [presentation,xcolor=table] # # important font choice! # #+LaTeX_HEADER: \usepackage{libertine} # # Let's move that logo... # #+LaTeX_HEADER: \usepackage{animate} #+COLUMNS: %40ITEM %10BEAMER_env(Env) %9BEAMER_envargs(Env Args) %10BEAMER_act(Act) %4BEAMER_col(Col) %10BEAMER_extra(Extra) %8BEAMER_opt(Opt) # have the theme desired #+latex_header: \mode{\usetheme{swh} \beamertemplatenavigationsymbolsempty \setbeamertemplate{navigation symbols}{} \setbeamertemplate{headline}{} #+latex_header: \setbeamertemplate{footline} #+latex_header: { #+latex_header: \leavevmode% #+latex_header: \hbox{% #+latex_header: \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.25ex,dp=1ex,center]{author in head/foot}% #+latex_header: \usebeamerfont{author in head/foot}\insertshortauthor%~~\beamer@ifempty{\insertshortinstitute}{}{(\insertshortinstitute)} #+latex_header: \end{beamercolorbox}% #+latex_header: \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.25ex,dp=1ex,right]{title in head/foot}% #+latex_header: \usebeamerfont{title in head/foot}\insertshorttitle{}\hspace*{2em} #+latex_header: \usebeamerfont{date in head/foot}\insertshortdate{}\hspace*{2em} #+latex_header: \insertframenumber{} / \inserttotalframenumber\hspace*{2ex} #+latex_header: \end{beamercolorbox}}% #+latex_header: \vskip0pt% #+latex_header: } #+latex_header: } # some color -#+latex_header: \rowcolors[]{1}{blue!10}{blue!05} +# #+latex_header: \rowcolors[]{1}{blue!10}{blue!05} # no longer works with texlive >= 2022 # # to have a toc for each section # # Use suggestions from http://web.stanford.edu/~dgleich/notebook/2009/05/appendix_slides_in_beamer_cont_1.html to avoid counting tocs in page number # #+latex_header: \AtBeginSection[] {\begin{frame} \frametitle{Outline} \tableofcontents[currentsection]\end{frame} \addtocounter{framenumber}{-1}} # set the paths for images #+latex_header: \graphicspath{% #+latex_header: {../../common/images/}{../../common/logos/}% #+latex_header: {pics/}{../images/}{../../images/}{../pics/}{../../pics/}% #+latex_header: {../figures/}{../../figures/}{../logos/}{../../logos/}{../../../logos/}% #+latex_header: {../../communication/web/graphics/carousel/}% #+latex_header: {../../communication/web/graphics/pictos/png/400x400/}% #+latex_header: } # some default information I did not find how to set this in org-mode # to add the picblock macro #+latex_header: \usepackage{extblocks} #+latex_header: \usepackage{pgfpages} #+latex_header: \usepackage{animate} #+latex_header: \usepackage{alltt} # # Requires # # http://www-ljk.imag.fr/membres/Jerome.Lelong/latex/appendixnumberbeamer.sty #+latex_header: \usepackage{appendixnumberbeamer} * The need for Software Preservation ** Software all around us :PROPERTIES: :CUSTOM_ID: main :END: *** Software is Pervasive :PROPERTIES: :CUSTOM_ID: softwareispervasive :END: **** At the heart of /our society/ :B_picblock: :PROPERTIES: :BEAMER_opt: pic=software-center.pdf, leftpic=true, width=.4\linewidth :BEAMER_env: picblock :END: #+ATTR_BEAMER: :environment itemize - communication, entertainment - administration, finance - health, energy, transportation - education, research, politics - ... #+BEAMER: \pause **** At the heart of /technology/ :B_picblock: :PROPERTIES: :BEAMER_opt: pic=pervasiveComputing :BEAMER_env: picblock :BEAMER_act: +- :END: #+ATTR_BEAMER: :environment itemize - house appliances $\approx$ 10M SLOC - phones $\approx$ 20M SLOC, /cars/ $\approx$ 100M SLOC - Internet of things, ... *** Software is Knowledge :PROPERTIES: :CUSTOM_ID: softwareisknowledge :END: **** /Key mediator/ for accessing /all/ information (c) Banksy :B_picblock: :PROPERTIES: :BEAMER_opt: pic=Banski-Information-Pillar-Society-Small, leftpic=true :BEAMER_env: picblock :END: Information is *a main pillar* of our modern societies. #+BEGIN_QUOTE Absent an ability to correctly interpret digital information, we are left with [...] "rotting bits" [...] of no value. \mbox{}\hfill Vinton G. Cerf IEEE 2011 #+END_QUOTE #+BEAMER: \pause **** Software is /an essential component/ of modern scientific research :B_picblock: # Deep knowledge embodied in complex software systems :PROPERTIES: :BEAMER_opt: pic=papermountain,width=.15\linewidth :BEAMER_env: picblock :END: #+BEGIN_QUOTE [...] the vast majority describe experimental methods or software that have become essential in their fields. #+END_QUOTE \mbox{}\hfill Top 100 papers (Nature, October 2014) # http://www.nature.com/news/the-top-100-papers-1.16224 **** separator :B_ignoreheading: :PROPERTIES: :BEAMER_env: ignoreheading :END: #+BEAMER: \pause **** Bottomline: Software embodies our /Knowledge/ and /Cultural Heritage/ :PROPERTIES: :END: It /must/ be /collected/, /preserved/, /referenced/ and made /accessible/! ** Software is Fragile *** Software is Fragile **** Bits rot, hosters shut down - Have you tested your backups recently? How about git fsck? - Gitorious - Google Code **** Software is scattered all around GitHub, GitLab, BitBucket, SourceForge, alioth, ...\\ \hfill ... /your personal home page/, ... **** No uniformity or stability whatsoever Software migrates from hosters to hosters, URIs aren't perennial * The Software Heritage project ** Our mission *** Our mission #+latex: \begin{center} #+ATTR_LATEX: :width .9\linewidth file:SWH+baseline.png #+latex: \end{center} /Collect/, /organise/, /preserve/ and /share/ /all the software source code/ that lies at the heart of our culture and our society. **** #+latex: \begin{center} https://www.softwareheritage.org/ #+latex: \end{center} *** Software Source Code is /different/ :PROPERTIES: :CUSTOM_ID: softwareisdifferent :END: #+LATEX: \includegraphics[width=.15\linewidth]{software.png} #+BEGIN_QUOTE “Programs must be written for people to read, and only incidentally for machines to execute.” Harold Abelson, Structure and Interpretation of Computer Programs #+END_QUOTE **** Distinguishing features - /executable/ and /human readable/ knowledge (an /all time new/) + even hardware is... software! (VHDL, FPGA, ...) + /text files are forever/ - naturally /evolves/ over time + the /development history/ is key to its /understanding/ - complex: large /web of dependencies/, millions of SLOCs **** In a word - software /is not just another/ sequence of bits - a software archive /is not just another/ digital archive ** Our vision *** We are working on the foundations :PROPERTIES: :CUSTOM_ID: foundations :END: **** One infrastructure to build them all #+latex: \begin{center} #+ATTR_LATEX: :width .9\linewidth file:SWH-as-foundation.png #+latex: \end{center} *** Preserving the world's software heritage :PROPERTIES: :CUSTOM_ID: heritage :END: #+LATEX: \includegraphics[width=.4\linewidth]{action-library__bi} **** A structured archive of all of the world’s software - preserve humanity’s technological and scientific *knowledge* - enable continued *access* to all digital documents and information - building block for *thematic portals* and collections *** Better software for industry :PROPERTIES: :CUSTOM_ID: industry :END: #+LATEX: \includegraphics[width=.4\linewidth]{action-industry__bi} **** A unique reference catalog of all industrial software components - ensures long term preservation of critical software - eases vulnerability tracking for more secure software - simplifies *traceability* for better software integration *** Supporting more accessible and reproducible science :PROPERTIES: :CUSTOM_ID: research :END: #+LATEX: \includegraphics[width=.4\linewidth]{action-research__bi} **** A global library referencing all software used in all research fields - completes the infrastructure for *Open Access* in science - provides intrinsic persistent identifiers needed for scientific *reproducibility* - enables large scale, verifiable *software studies* * Software Heritage in depth ** Our current work *** Meet the team #+latex: \begin{center} #+ATTR_LATEX: :height .4\linewidth file:team.jpg #+latex: \end{center} **** - Roberto Di Cosmo, CEO - Stefano Zacchiroli, CTO - Antoine Dumont and Nicolas Dandrimont, Engineers - Jordi Bertran de Balanda and Quentin Campos, Interns - Guillaume Rousseau, Visiting Scientist *** Our stack **** Hardware - Hosted by Inria - One big hypervisor with a dozen virtual machines - One high density storage array (60 * 6TB hard drives => 300TB usable) - Another copy of the data in another server room; logical leader/follower mirroring - Soon to enable a mirror network to duplicate our contents **** Software - Debian for all our machines - PostgreSQL for metadata storage - Python3 and psycopg2 for the backend - Flask for the web apps - RabbitMQ for task scheduling *** Our values are those of Debian **** 100% FOSS licenses - GPLv3 for the backend code - AGPLv3 for the frontend - Apache2 for the Puppet manifests **** Community-minded We encourage bug reports and code contributions from everyone interested in pursuing our software preservation mission. *** Source Code **** Our forge opens today https://forge.softwareheritage.org/ **** We've timed the opening of our forge for DebConf, as a thank you for what the community has given to us. *** Current data sources **** Ingest all the software #+latex: \begin{center} #+ATTR_LATEX: :width .9\linewidth file:growth.png #+latex: \end{center} - all the "non-fork" GitHub repositories - all the Debian packages from snapshot.debian.org - the GNU project FTP archive **** Preserve all the software - Google Code - Gitorious *** The structure of the archive **** On-disk storage - flat file storage for contents - postgres database for the metadata **** Data model: /one/ big Merkle DAG, inspired by the git model - Origins (= repositories) - Occurrences (= branches) - Releases (= tags) - Revisions (= commits) - Directories (= trees) - Contents (= blobs) *** Software Heritage in numbers **** Volume - 120TB used by (gzipped) files on disk - 3.1TB PostgreSQL database for the metadata **** Counts - 2.7 billion files - 2.2 billion directories - 600 million revisions - 12 million people - 5 million releases #+BEAMER: \pause **** *By far, the biggest DVCS tree in existence* ** Our roadmap *** The road ahead **** Planned features... - /lookup/ by hashes for contents (done) - /provenance information/ for all the content - /browsing/: wayback machine for software source code - /full text search/: dive into the Software Heritage archive - /download/: git clone from Software Heritage #+BEAMER: \pause **** ... and many more one could imagine all the world's software development history in a single graph!\\ \hfill /that makes a 3.1TB database already.../ *** Technical Challenges for data sources **** Handling the backlog - ingesting all the data saved one-shot **** Staying current - new repositories and commits on GitHub - sync with snapshot.debian.org - ... \hfill /We need reliable, standardised event feeds/ **** Expanding the archive - discover and classify /all/ the software sources - importers for other VCSs (SVN, Hg, ...) \hfill /Wonderful playground if you have time to help!/ * How to contribute to Software Heritage ** Developer information *** Join our community of developers **** Our forge is open at https://forge.softwareheritage.org/ **** Subscribe to our mailing list https://deb.li/swhdevelml **** Have a look at our wiki https://wiki.softwareheritage.org/ ** Sponsoring opportunities *** Join our sponsors **** Inria as initiator #+LATEX: \includegraphics[width=.3\linewidth]{inria-logo-new.png} French national institute for research in Computer Science. - Contributed to the birth of W3C - 4500 people, many prestigious scientists - In the news: Freak and Logjam TLS vulnerabilities Inria is /fully supporting/ the bootstrap phase of Software Heritage. **** More info for sponsors on our website: https://www.softwareheritage.org/support/sponsors/ * Conclusion :PROPERTIES: :NOTOC: t :END: *** Conclusion :PROPERTIES: :NOTOC: t :END: **** Software Heritage is - a revolutionary /reference archive/ of all software ever written - a unique /complement/ for /development platforms/ like GitHub - an international, open, nonprofit, /mutualized infrastructure/ #+BEAMER: \begin{center}\alert{\emph{ready to work with you!}}\end{center} #+BEAMER: \pause **** Questions :B_ignoreheading: :PROPERTIES: :BEAMER_env: ignoreheading :END: #+BEAMER: {\vfill\begin{center}\Huge{Questions ?}\end{center}\vfill} **** Contact us /email:/ olasd@softwareheritage.org / info@softwareheritage.org /website:/ https://www.softwareheritage.org * Foo :noexport: *** Like all digital information, software is fragile :PROPERTIES: :CUSTOM_ID: fragiletagcloud :END: #+latex: \begin{center} #+ATTR_LATEX: :width .8\linewidth file:fragilecloud.png #+latex: \end{center} **** An example is worth a thousand words... \hfill let's see a few *** Inconsiderate or malicious loss of code :PROPERTIES: :CUSTOM_ID: lost :END: **** The Year 2000 Bug ... uncovered an inconvenient truth :B_picblock: :PROPERTIES: :BEAMER_env: picblock :BEAMER_opt: leftpic=true,pic=y2k :END: in 1999, an estimated 40% of companies had either /lost/, or \alert{thrown away} the original source code for their systems! **** CodeSpaces: source code hosting, 2007-2014 :B_picblock: :PROPERTIES: :BEAMER_env: picblock :BEAMER_opt: pic=codespaces-murdered-compact,width=.45\linewidth,leftpic=true :END: Yes, for \emph{seven years} all seemed ok.\\ \pause No, they did not recover the data. *** Business-driven loss of code support: Google \begin{center} \includegraphics[width=.99\linewidth]{google-code-shutdown-annotated} \end{center} \url{http://google-opensource.blogspot.fr/2015/03/farewell-to-google-code.html} *** Business-driven loss of code support: Gitorious \begin{alltt} From: Rolf Bjaanes \\ To: zack@upsilon.cc\\ Subject: Gitorious.org is dead, long live Gitorious.org\\ Message-Id: <30589491.20150416155909.552fdc4d164758.16579271@mail141.wdc04.mandrillapp.com>\\ \mbox{}\\ Hi zacchiro,\\ \mbox{}\\ I'm Rolf Bjaanes, CEO of Gitorious, and you are receiving this email because you have a user on gitorious.org. As you may know, Gitorious was acquired by GitLab [1] about a month ago \emph{(NDLR: 3/3/2015)}, and we announced that Gitorious.org would be \alert{shutting down at the end of May, 2015}.\\ % After the announcement we talked to the Archive Team [2] about how to preserve Gitorious.org and its data for the future. A member of the Archive Team graciously offered to host gitorious.org as a read-only archive on Gitorious.org and GitLab agreed to allow to use the Gitorious.org domain name for this. % This is a huge benefit to anyone depending on gitorious.org as repositories will remain available at the same location. Cloning and fetching will continue to work as well. Projects you may depend on will stay around even if it isn't moved to % +GitLab. % In order to build the archive we need to make Gitorious.org read-only prior to the shutdown date. % This ensures that no new data is coming in while we are migrating. % Pushing changes and creating new repositories will therefore stop working from the 15th of May, 2015. % If you need to push changes, create new repositories and generally collaborate on code, I highly recommend using the migration tool available on gitlab.com [3] and updating your remotes to point there. % If you are self-hosting you can check out GitLab Community Edition [4] and GitLab Enterprise Edition [5]. % Are you using Gitorious in a professional capacity or need help to migrate your existing Gitorious instance to GitLab? Send an email to sales@gitlab.com and tell them I sent you. % I realise that all of this may be a major inconvenience, and for that I sincerely apologise, but I hope you appreciate the efforts we are putting into making it as painless as we can. % If you have any questions please reach out to GitLab on Twitter [6] or use the mailing list [7]. % Thanks, ... Rolf % [1] https://about.gitlab.com/2015/03/03/gitlab-acquires-gitorious/ % [2] http://archiveteam.org/ % [3] https://gitlab.com/ % [4] https://about.gitlab.com/features/ % [5] https://about.gitlab.com/features/#enterprise % [6] https://twitter.com/gitlab % [7] https://groups.google.com/forum/#!forum/gitlabhq \end{alltt} *** Disruption of the /web of reference/ **** Web links \emph{are not} permanent (even \emph{permalinks}) :B_picblock: :PROPERTIES: :BEAMER_env: picblock :BEAMER_opt: pic=404 :END: Uniform Resource Locators, RFC 1738: - /there is no general guarantee that a URL... which at one time points to a given object continues to do so/ **** URLs used in articles /decay/! Analysis of /IEEE Computer/, and the /Communications of the ACM/ from 1995 to 1999: - the /half-life/ of a referenced URL /is approximately 4 years/ from its publication date \hfill D. Spinellis. The Decay and Failures of URL References.\\ \hfill Communications of the ACM, 46(1):71-77, January 2003.\\ *** Uniformity: nowhere to be seen **** Reference repositor(ies) - Bitbucket - GitHub - GitLab - Gitorious (no, scratch this) - Google Code (no, scratch this) - Maven - Sourceforge - your employer's forge - your home page - ... **** :B_ignoreheading: :PROPERTIES: :BEAMER_env: ignoreheading :END: And they are all different and incompatible diff --git a/talks-public/2016-09-07-git-meetup/2016-09-07-git-meetup.org b/talks-public/2016-09-07-git-meetup/2016-09-07-git-meetup.org index 30a469d..b01e769 100644 --- a/talks-public/2016-09-07-git-meetup/2016-09-07-git-meetup.org +++ b/talks-public/2016-09-07-git-meetup/2016-09-07-git-meetup.org @@ -1,453 +1,453 @@ #+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: Une Archive Mondiale du Logiciel Libre, Inspirée de Git #+AUTHOR: Nicolas Dandrimont, Stefano Zacchiroli #+DATE: September 7th, 2016 #+EMAIL: olasd@softwareheritage.org, zack@softwareheritage.org #+KEYWORDS: software heritage legacy preservation knowledge mankind technology git #+BEAMER_HEADER: \title[Software Heritage]{Software Heritage} #+BEAMER_HEADER: \author[N. Dandrimont, S. Zacchiroli]{Nicolas Dandrimont, Stefano Zacchiroli} #+BEAMER_HEADER: \date[07/09/2016, Meetup Git Paris]{September 7th, 2016\\ Meetup Git\\ Paris, France} #+BEAMER_HEADER: \titlegraphic{\includegraphics[width=0.7\textwidth]{SWH-logo}} #+STARTUP: hidestars # activate org-beamer-mode minor mode automatically #+STARTUP: beamer # org export options #+LANGUAGE: en #+OPTIONS: H:3 num:t toc:nil \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t #+OPTIONS: TeX:t LaTeX:t skip:nil d:nil todo:t pri:nil tags:not-in-toc #+EXPORT_SELECT_TAGS: export #+EXPORT_EXCLUDE_TAGS: noexport #+LINK_UP: #+LINK_HOME: #+LaTeX_CLASS: beamer #+LaTeX_CLASS_OPTIONS: [presentation,xcolor=table] # # important font choice! # #+LaTeX_HEADER: \usepackage{libertine} # # Let's move that logo... # #+LaTeX_HEADER: \usepackage{animate} #+COLUMNS: %40ITEM %10BEAMER_env(Env) %9BEAMER_envargs(Env Args) %10BEAMER_act(Act) %4BEAMER_col(Col) %10BEAMER_extra(Extra) %8BEAMER_opt(Opt) # have the theme desired #+latex_header: \mode{\usetheme{swh} \beamertemplatenavigationsymbolsempty \setbeamertemplate{navigation symbols}{} \setbeamertemplate{headline}{} #+latex_header: \setbeamertemplate{footline} #+latex_header: { #+latex_header: \leavevmode% #+latex_header: \hbox{% #+latex_header: \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.25ex,dp=1ex,center]{author in head/foot}% #+latex_header: \usebeamerfont{author in head/foot}\insertshortauthor%~~\beamer@ifempty{\insertshortinstitute}{}{(\insertshortinstitute)} #+latex_header: \end{beamercolorbox}% #+latex_header: \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.25ex,dp=1ex,right]{title in head/foot}% #+latex_header: \usebeamerfont{title in head/foot}\insertshorttitle{}\hspace*{2em} #+latex_header: \usebeamerfont{date in head/foot}\insertshortdate{}\hspace*{2em} #+latex_header: \insertframenumber{} / \inserttotalframenumber\hspace*{2ex} #+latex_header: \end{beamercolorbox}}% #+latex_header: \vskip0pt% #+latex_header: } #+latex_header: } # some color -#+latex_header: \rowcolors[]{1}{blue!10}{blue!05} +# #+latex_header: \rowcolors[]{1}{blue!10}{blue!05} # no longer works with texlive >= 2022 # # to have a toc for each section # # Use suggestions from http://web.stanford.edu/~dgleich/notebook/2009/05/appendix_slides_in_beamer_cont_1.html to avoid counting tocs in page number # #+latex_header: \AtBeginSection[] {\begin{frame} \frametitle{Outline} \tableofcontents[currentsection]\end{frame} \addtocounter{framenumber}{-1}} # set the paths for images #+latex_header: \graphicspath{% #+latex_header: {../../common/images/}{../../common/logos/}% #+latex_header: {pics/}{../images/}{../../images/}{../pics/}{../../pics/}% #+latex_header: {../figures/}{../../figures/}{../logos/}{../../logos/}{../../../logos/}% #+latex_header: {../../communication/web/graphics/carousel/}% #+latex_header: {../../communication/web/graphics/pictos/png/400x400/}% #+latex_header: } # some default information I did not find how to set this in org-mode # to add the picblock macro #+latex_header: \usepackage{extblocks} #+latex_header: \usepackage{pgfpages} #+latex_header: \usepackage{animate} #+latex_header: \usepackage{alltt} # # Requires # # http://www-ljk.imag.fr/membres/Jerome.Lelong/latex/appendixnumberbeamer.sty #+latex_header: \usepackage{appendixnumberbeamer} * The need for software preservation ** Software all around us :PROPERTIES: :CUSTOM_ID: main :END: *** Software is Pervasive :PROPERTIES: :CUSTOM_ID: softwareispervasive :END: **** At the heart of /our society/ :B_picblock: :PROPERTIES: :BEAMER_opt: pic=software-center.pdf, leftpic=true, width=.4\linewidth :BEAMER_env: picblock :END: #+ATTR_BEAMER: :environment itemize - communication, entertainment - administration, finance - health, energy, transportation - education, research, politics - ... #+BEAMER: \pause **** At the heart of /technology/ :B_picblock: :PROPERTIES: :BEAMER_opt: pic=pervasiveComputing :BEAMER_env: picblock :BEAMER_act: +- :END: #+ATTR_BEAMER: :environment itemize - house appliances $\approx$ 10M SLOC - phones $\approx$ 20M SLOC, /cars/ $\approx$ 100M SLOC - Internet of things, ... *** Software is Knowledge :PROPERTIES: :CUSTOM_ID: softwareisknowledge :END: **** /Key mediator/ for accessing /all/ information (c) Banksy :B_picblock: :PROPERTIES: :BEAMER_opt: pic=Banski-Information-Pillar-Society-Small, leftpic=true :BEAMER_env: picblock :END: Information is *a main pillar* of our modern societies. #+BEGIN_QUOTE Absent an ability to correctly interpret digital information, we are left with [...] "rotting bits" [...] of no value. \mbox{}\hfill Vinton G. Cerf IEEE 2011 #+END_QUOTE #+BEAMER: \pause **** Software is /an essential component/ of modern scientific research :B_picblock: # Deep knowledge embodied in complex software systems :PROPERTIES: :BEAMER_opt: pic=papermountain,width=.15\linewidth :BEAMER_env: picblock :END: #+BEGIN_QUOTE [...] the vast majority describe experimental methods or software that have become essential in their fields. #+END_QUOTE \mbox{}\hfill Top 100 papers (Nature, October 2014) # http://www.nature.com/news/the-top-100-papers-1.16224 **** separator :B_ignoreheading: :PROPERTIES: :BEAMER_env: ignoreheading :END: #+BEAMER: \pause **** Bottomline: Software embodies our /Knowledge/ and /Cultural Heritage/ :PROPERTIES: :END: It /must/ be /collected/, /preserved/, /referenced/ and made /accessible/! ** Software is fragile *** Software is Fragile **** Bits rot, hosters shut down - Have you tested your backups recently? How about git fsck? - Gitorious - Google Code **** Software is scattered all around GitHub, GitLab, BitBucket, SourceForge, alioth, ...\\ \hfill ... /your personal home page/, ... **** No uniformity or stability whatsoever Software migrates from hosters to hosters, URIs aren't perennial * The Software Heritage project ** Mission *** Our mission #+latex: \begin{center} #+ATTR_LATEX: :width \linewidth file:SWH-logo.pdf #+latex: \end{center} /Collect/, /organise/, /preserve/ and /share/ /all the software source code/ that lies at the heart of our culture and our society. **** #+latex: \begin{center} https://www.softwareheritage.org/ #+latex: \end{center} *** Software Source Code is /different/ :PROPERTIES: :CUSTOM_ID: softwareisdifferent :END: #+LATEX: \includegraphics[width=.15\linewidth]{software.png} #+BEGIN_QUOTE “Programs must be written for people to read, and only incidentally for machines to execute.” Harold Abelson, Structure and Interpretation of Computer Programs #+END_QUOTE **** Distinguishing features - /executable/ and /human readable/ knowledge (an /all time new/) + even hardware is... software! (VHDL, FPGA, ...) + /text files are forever/ - naturally /evolves/ over time + the /development history/ is key to its /understanding/ - complex: large /web of dependencies/, millions of SLOCs **** In a word - software /is not just another/ sequence of bits - a software archive /is not just another/ digital archive ** Status and roadmap *** Current status **** Ingest all the software #+latex: \begin{center} #+ATTR_LATEX: :width .9\linewidth file:growth.png #+latex: \end{center} - all (non-fork) GitHub repositories - all Debian package uploads from snapshot.debian.org - the GNU project FTP archive **** Preserve all the software - Google Code - Gitorious *** Roadmap **** Features - /lookup/ by hashes for contents (done) - /browse/: wayback machine for software source code - /download/: git clone from Software Heritage - /provenance/ information for all the content - /full text search/: dive into the Software Heritage archive #+BEAMER: \pause **** ... and much more than one could imagine - license information (for code reuse) - source code autocomplete in your IDE - FOSS history/archeology - the world's software devel history in a single Merkle DAG! * Software Heritage internals ** Archive *** The structure of the archive **** On-disk storage - flat file storage for contents - postgres database for the metadata **** Data model: /one/ big Merkle DAG, inspired by the git model - Origins (= repositories) - Snapshots (= lists of branches and tags) - Releases (= tags) - Revisions (= commits) - Directories (= trees) - Contents (= blobs) *** The archive in pictures #+LATEX: \only<1>{\colorbox{white}{\includegraphics[width=\linewidth]{git-merkle/merkle_1.pdf}}} #+LATEX: \only<2>{\colorbox{white}{\includegraphics[width=\linewidth]{git-merkle/contents.pdf}}} #+LATEX: \only<3>{\colorbox{white}{\includegraphics[width=\linewidth]{git-merkle/merkle_2_contents.pdf}}} #+LATEX: \only<4>{\colorbox{white}{\includegraphics[width=\linewidth]{git-merkle/directories.pdf}}} #+LATEX: \only<5>{\colorbox{white}{\includegraphics[width=\linewidth]{git-merkle/merkle_3_directories.pdf}}} #+LATEX: \only<6>{\colorbox{white}{\includegraphics[width=\linewidth]{git-merkle/revisions.pdf}}} #+LATEX: \only<7>{\colorbox{white}{\includegraphics[width=\linewidth]{git-merkle/merkle_4_revisions.pdf}}} #+LATEX: \only<8>{\colorbox{white}{\includegraphics[width=\linewidth]{git-merkle/releases.pdf}}} #+LATEX: \only<9>{\colorbox{white}{\includegraphics[width=\linewidth]{git-merkle/merkle_5_releases.pdf}}} #+LATEX: \only<10>{\colorbox{white}{\includegraphics[width=\linewidth]{git-merkle/snapshots.pdf}}} *** Software Heritage in numbers **** Volume - 120TB used by (gzipped) files on disk - 3.1TB PostgreSQL database for the metadata **** Counts - 2.7 billion files - 2.2 billion directories - 600 million revisions - 12 million people - 5 million releases #+BEAMER: \pause **** *By far, the biggest DVCS tree in existence* ** Git loader *** Git loader architecture #+LATEX: \only<1>{\colorbox{white}{\includegraphics[width=\linewidth]{git-loader/git-loader-1.pdf}}} #+LATEX: \only<2>{\colorbox{white}{\includegraphics[width=\linewidth]{git-loader/git-loader-2.pdf}}} #+LATEX: \only<3>{\colorbox{white}{\includegraphics[width=\linewidth]{git-loader/git-loader-3.pdf}}} #+LATEX: \only<4>{\colorbox{white}{\includegraphics[width=\linewidth]{git-loader/git-loader-4.pdf}}} #+LATEX: \only<5>{\colorbox{white}{\includegraphics[width=\linewidth]{git-loader/git-loader-5.pdf}}} #+LATEX: \only<6>{\colorbox{white}{\includegraphics[width=\linewidth]{git-loader/git-loader-6.pdf}}} #+LATEX: \only<7>{\colorbox{white}{\includegraphics[width=\linewidth]{git-loader/git-loader-7.pdf}}} #+LATEX: \only<8>{\colorbox{white}{\includegraphics[width=\linewidth]{git-loader/git-loader-8.pdf}}} #+LATEX: \only<9>{\colorbox{white}{\includegraphics[width=\linewidth]{git-loader/git-loader-9.pdf}}} #+LATEX: \only<10>{\colorbox{white}{\includegraphics[width=\linewidth]{git-loader/git-loader-10.pdf}}} #+LATEX: \only<11>{\colorbox{white}{\includegraphics[width=\linewidth]{git-loader/git-loader-11.pdf}}} #+LATEX: \only<12>{\colorbox{white}{\includegraphics[width=\linewidth]{git-loader/git-loader-12.pdf}}} * Conclusion ** *** How to contribute to Software Heritage **** Developers - Info: www.softwareheritage.org/community/developers - Code: forge.softwareheritage.org **** Sponsors #+LATEX: \includegraphics[width=.3\linewidth]{inria-logo-new.png} \hspace{1em} (founder) - sponsorship opportunities www.softwareheritage.org/support/sponsors **** Contact us - /email:/ {olasd,zack,info}@softwareheritage.org - /twitter:/ @swheritage - /web:/ www.softwareheritage.org * Skipped content :noexport: *** We are working on the foundations :PROPERTIES: :CUSTOM_ID: foundations :END: **** One infrastructure to build them all #+latex: \begin{center} #+ATTR_LATEX: :width .9\linewidth file:SWH-as-foundation.png #+latex: \end{center} *** Preserving the world's software heritage :PROPERTIES: :CUSTOM_ID: heritage :END: #+LATEX: \includegraphics[width=.4\linewidth]{action-library__bi} **** A structured archive of all of the world’s software - preserve humanity’s technological and scientific *knowledge* - enable continued *access* to all digital documents and information - building block for *thematic portals* and collections *** Better software for industry :PROPERTIES: :CUSTOM_ID: industry :END: #+LATEX: \includegraphics[width=.4\linewidth]{action-industry__bi} **** A unique reference catalog of all industrial software components - ensures long term preservation of critical software - eases vulnerability tracking for more secure software - simplifies *traceability* for better software integration *** Supporting more accessible and reproducible science :PROPERTIES: :CUSTOM_ID: research :END: #+LATEX: \includegraphics[width=.4\linewidth]{action-research__bi} **** A global library referencing all software used in all research fields - completes the infrastructure for *Open Access* in science - provides intrinsic persistent identifiers needed for scientific *reproducibility* - enables large scale, verifiable *software studies* *** Like all digital information, software is fragile :PROPERTIES: :CUSTOM_ID: fragiletagcloud :END: #+latex: \begin{center} #+ATTR_LATEX: :width .8\linewidth file:fragilecloud.png #+latex: \end{center} **** An example is worth a thousand words... \hfill let's see a few *** Inconsiderate or malicious loss of code :PROPERTIES: :CUSTOM_ID: lost :END: **** The Year 2000 Bug ... uncovered an inconvenient truth :B_picblock: :PROPERTIES: :BEAMER_env: picblock :BEAMER_opt: leftpic=true,pic=y2k :END: in 1999, an estimated 40% of companies had either /lost/, or \alert{thrown away} the original source code for their systems! **** CodeSpaces: source code hosting, 2007-2014 :B_picblock: :PROPERTIES: :BEAMER_env: picblock :BEAMER_opt: pic=codespaces-murdered-compact,width=.45\linewidth,leftpic=true :END: Yes, for \emph{seven years} all seemed ok.\\ \pause No, they did not recover the data. *** Business-driven loss of code support: Google \begin{center} \includegraphics[width=.99\linewidth]{google-code-shutdown-annotated} \end{center} \url{http://google-opensource.blogspot.fr/2015/03/farewell-to-google-code.html} *** Business-driven loss of code support: Gitorious \begin{alltt} From: Rolf Bjaanes \\ To: zack@upsilon.cc\\ Subject: Gitorious.org is dead, long live Gitorious.org\\ Message-Id: <30589491.20150416155909.552fdc4d164758.16579271@mail141.wdc04.mandrillapp.com>\\ \mbox{}\\ Hi zacchiro,\\ \mbox{}\\ I'm Rolf Bjaanes, CEO of Gitorious, and you are receiving this email because you have a user on gitorious.org. As you may know, Gitorious was acquired by GitLab [1] about a month ago \emph{(NDLR: 3/3/2015)}, and we announced that Gitorious.org would be \alert{shutting down at the end of May, 2015}.\\ % After the announcement we talked to the Archive Team [2] about how to preserve Gitorious.org and its data for the future. A member of the Archive Team graciously offered to host gitorious.org as a read-only archive on Gitorious.org and GitLab agreed to allow to use the Gitorious.org domain name for this. % This is a huge benefit to anyone depending on gitorious.org as repositories will remain available at the same location. Cloning and fetching will continue to work as well. Projects you may depend on will stay around even if it isn't moved to % +GitLab. % In order to build the archive we need to make Gitorious.org read-only prior to the shutdown date. % This ensures that no new data is coming in while we are migrating. % Pushing changes and creating new repositories will therefore stop working from the 15th of May, 2015. % If you need to push changes, create new repositories and generally collaborate on code, I highly recommend using the migration tool available on gitlab.com [3] and updating your remotes to point there. % If you are self-hosting you can check out GitLab Community Edition [4] and GitLab Enterprise Edition [5]. % Are you using Gitorious in a professional capacity or need help to migrate your existing Gitorious instance to GitLab? Send an email to sales@gitlab.com and tell them I sent you. % I realise that all of this may be a major inconvenience, and for that I sincerely apologise, but I hope you appreciate the efforts we are putting into making it as painless as we can. % If you have any questions please reach out to GitLab on Twitter [6] or use the mailing list [7]. % Thanks, ... Rolf % [1] https://about.gitlab.com/2015/03/03/gitlab-acquires-gitorious/ % [2] http://archiveteam.org/ % [3] https://gitlab.com/ % [4] https://about.gitlab.com/features/ % [5] https://about.gitlab.com/features/#enterprise % [6] https://twitter.com/gitlab % [7] https://groups.google.com/forum/#!forum/gitlabhq \end{alltt} *** Disruption of the /web of reference/ **** Web links \emph{are not} permanent (even \emph{permalinks}) :B_picblock: :PROPERTIES: :BEAMER_env: picblock :BEAMER_opt: pic=404 :END: Uniform Resource Locators, RFC 1738: - /there is no general guarantee that a URL... which at one time points to a given object continues to do so/ **** URLs used in articles /decay/! Analysis of /IEEE Computer/, and the /Communications of the ACM/ from 1995 to 1999: - the /half-life/ of a referenced URL /is approximately 4 years/ from its publication date \hfill D. Spinellis. The Decay and Failures of URL References.\\ \hfill Communications of the ACM, 46(1):71-77, January 2003.\\ *** Uniformity: nowhere to be seen **** Reference repositor(ies) - Bitbucket - GitHub - GitLab - Gitorious (no, scratch this) - Google Code (no, scratch this) - Maven - Sourceforge - your employer's forge - your home page - ... **** :B_ignoreheading: :PROPERTIES: :BEAMER_env: ignoreheading :END: And they are all different and incompatible *** Technical Challenges for data sources **** Handling the backlog - ingesting all the data saved one-shot **** Staying current - new repositories and commits on GitHub - sync with snapshot.debian.org - ... \hfill /We need reliable, standardised event feeds/ **** Expanding the archive - discover and classify /all/ the software sources - importers for other VCSs (SVN, Hg, ...) \hfill /Wonderful playground if you have time to help!/ diff --git a/talks-public/2018-02-04-fosdem-legal/this/prelude-swh+intel.org b/talks-public/2018-02-04-fosdem-legal/this/prelude-swh+intel.org index dceeb6d..4324904 100644 --- a/talks-public/2018-02-04-fosdem-legal/this/prelude-swh+intel.org +++ b/talks-public/2018-02-04-fosdem-legal/this/prelude-swh+intel.org @@ -1,93 +1,93 @@ #+BEAMER_HEADER: \titlegraphic{\raisebox{-3mm}{\includegraphics[width=\extblockscale{0.2\textwidth}]{this/intel-logo}}\hspace{0.1\textwidth}\includegraphics[width=\extblockscale{0.45\textwidth}]{SWH-logo}} #+STARTUP: hidestars # activate org-beamer-mode minor mode automatically #+STARTUP: beamer # org export options #+LANGUAGE: en #+OPTIONS: H:2 num:t toc:nil \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t #+OPTIONS: TeX:t LaTeX:t skip:nil d:nil todo:t pri:nil tags:not-in-toc #+EXPORT_SELECT_TAGS: export #+EXPORT_EXCLUDE_TAGS: noexport #+LINK_UP: #+LINK_HOME: #+LaTeX_CLASS: beamer #+LaTeX_CLASS_OPTIONS: [presentation,xcolor=table] # # important font choice! # #+LaTeX_HEADER: \usepackage{libertine} # # Let's move that logo... # #+LaTeX_HEADER: \usepackage{animate} #+COLUMNS: %40ITEM %10BEAMER_env(Env) %9BEAMER_envargs(Env Args) %10BEAMER_act(Act) %4BEAMER_col(Col) %10BEAMER_extra(Extra) %8BEAMER_opt(Opt) # have the theme desired #+latex_header: \mode{\usetheme{swh} \beamertemplatenavigationsymbolsempty \setbeamertemplate{navigation symbols}{} \setbeamertemplate{headline}{} #+latex_header: \setbeamertemplate{footline} #+latex_header: { #+latex_header: \leavevmode% #+latex_header: \hbox{% #+latex_header: \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.25ex,dp=1ex,center]{author in head/foot}% #+latex_header: \usebeamerfont{author in head/foot}\insertshortauthor%~~\beamer@ifempty{\insertshortinstitute}{}{(\insertshortinstitute)} #+latex_header: \end{beamercolorbox}% #+latex_header: \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.25ex,dp=1ex,right]{title in head/foot}% #+latex_header: \usebeamerfont{title in head/foot}\insertshorttitle{}\hspace*{2em} #+latex_header: \usebeamerfont{date in head/foot}\insertshortdate{}\hspace*{2em} #+latex_header: \insertframenumber{} / \inserttotalframenumber\hspace*{2ex} #+latex_header: \end{beamercolorbox}}% #+latex_header: \vskip0pt% #+latex_header: } #+latex_header: } # some color -#+latex_header: \rowcolors[]{1}{blue!10}{blue!05} +# #+latex_header: \rowcolors[]{1}{blue!10}{blue!05} # no longer works with texlive >= 2022 # #+latex_header: \AtBeginSection[] {\begin{frame}<*> \frametitle{Outline} \tableofcontents[currentsection]\end{frame} \addtocounter{framenumber}{-1}} # set the paths for images #+latex_header: \graphicspath{% #+latex_header: {../../common/images/}{../../common/logos/}% #+latex_header: {pics/}{../images/}{../../images/}{../pics/}{../../pics/}% #+latex_header: {../figures/}{../../figures/}{../logos/}{../../logos/}{../../../logos/}% #+latex_header: {../../communication/web/graphics/carousel/}% #+latex_header: {../../communication/web/graphics/pictos/png/400x400/}% #+latex_header: } # some default information I did not find how to set this in org-mode #+latex_header: \institute[Irill/INRIA/UPD]{\url{roberto@dicosmo.org}} # to add the picblock macro #+latex_header: \usepackage{extblocks} #+latex_header: \usepackage{pgfpages} #+latex_header: \usepackage{animate} #+latex_header: \usepackage{alltt} # # Itemize in multiple columns # #+latex_header: \usepackage{multicol} # # Requires # # http://www-ljk.imag.fr/membres/Jerome.Lelong/latex/appendixnumberbeamer.sty #+latex_header: \usepackage{appendixnumberbeamer} # # Colors, color boxes # #+latex_header: \usepackage{color} #+latex_header: \usepackage{soul} # http://tex.stackexchange.com/questions/41683/why-is-it-that-coloring-in-soul-in-beamer-is-not-visible #+latex_header: \makeatletter #+latex_header: \newcommand\SoulColor{% #+latex_header: \let\set@color\beamerorig@set@color #+latex_header: \let\reset@color\beamerorig@reset@color} #+latex_header: \makeatother #+latex_header: \SoulColor #+LATEX_HEADER: \usepackage{listings} diff --git a/talks-public/2018-04-18-LLW/this/prelude-swh+intel.org b/talks-public/2018-04-18-LLW/this/prelude-swh+intel.org index dceeb6d..4324904 100644 --- a/talks-public/2018-04-18-LLW/this/prelude-swh+intel.org +++ b/talks-public/2018-04-18-LLW/this/prelude-swh+intel.org @@ -1,93 +1,93 @@ #+BEAMER_HEADER: \titlegraphic{\raisebox{-3mm}{\includegraphics[width=\extblockscale{0.2\textwidth}]{this/intel-logo}}\hspace{0.1\textwidth}\includegraphics[width=\extblockscale{0.45\textwidth}]{SWH-logo}} #+STARTUP: hidestars # activate org-beamer-mode minor mode automatically #+STARTUP: beamer # org export options #+LANGUAGE: en #+OPTIONS: H:2 num:t toc:nil \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t #+OPTIONS: TeX:t LaTeX:t skip:nil d:nil todo:t pri:nil tags:not-in-toc #+EXPORT_SELECT_TAGS: export #+EXPORT_EXCLUDE_TAGS: noexport #+LINK_UP: #+LINK_HOME: #+LaTeX_CLASS: beamer #+LaTeX_CLASS_OPTIONS: [presentation,xcolor=table] # # important font choice! # #+LaTeX_HEADER: \usepackage{libertine} # # Let's move that logo... # #+LaTeX_HEADER: \usepackage{animate} #+COLUMNS: %40ITEM %10BEAMER_env(Env) %9BEAMER_envargs(Env Args) %10BEAMER_act(Act) %4BEAMER_col(Col) %10BEAMER_extra(Extra) %8BEAMER_opt(Opt) # have the theme desired #+latex_header: \mode{\usetheme{swh} \beamertemplatenavigationsymbolsempty \setbeamertemplate{navigation symbols}{} \setbeamertemplate{headline}{} #+latex_header: \setbeamertemplate{footline} #+latex_header: { #+latex_header: \leavevmode% #+latex_header: \hbox{% #+latex_header: \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.25ex,dp=1ex,center]{author in head/foot}% #+latex_header: \usebeamerfont{author in head/foot}\insertshortauthor%~~\beamer@ifempty{\insertshortinstitute}{}{(\insertshortinstitute)} #+latex_header: \end{beamercolorbox}% #+latex_header: \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.25ex,dp=1ex,right]{title in head/foot}% #+latex_header: \usebeamerfont{title in head/foot}\insertshorttitle{}\hspace*{2em} #+latex_header: \usebeamerfont{date in head/foot}\insertshortdate{}\hspace*{2em} #+latex_header: \insertframenumber{} / \inserttotalframenumber\hspace*{2ex} #+latex_header: \end{beamercolorbox}}% #+latex_header: \vskip0pt% #+latex_header: } #+latex_header: } # some color -#+latex_header: \rowcolors[]{1}{blue!10}{blue!05} +# #+latex_header: \rowcolors[]{1}{blue!10}{blue!05} # no longer works with texlive >= 2022 # #+latex_header: \AtBeginSection[] {\begin{frame}<*> \frametitle{Outline} \tableofcontents[currentsection]\end{frame} \addtocounter{framenumber}{-1}} # set the paths for images #+latex_header: \graphicspath{% #+latex_header: {../../common/images/}{../../common/logos/}% #+latex_header: {pics/}{../images/}{../../images/}{../pics/}{../../pics/}% #+latex_header: {../figures/}{../../figures/}{../logos/}{../../logos/}{../../../logos/}% #+latex_header: {../../communication/web/graphics/carousel/}% #+latex_header: {../../communication/web/graphics/pictos/png/400x400/}% #+latex_header: } # some default information I did not find how to set this in org-mode #+latex_header: \institute[Irill/INRIA/UPD]{\url{roberto@dicosmo.org}} # to add the picblock macro #+latex_header: \usepackage{extblocks} #+latex_header: \usepackage{pgfpages} #+latex_header: \usepackage{animate} #+latex_header: \usepackage{alltt} # # Itemize in multiple columns # #+latex_header: \usepackage{multicol} # # Requires # # http://www-ljk.imag.fr/membres/Jerome.Lelong/latex/appendixnumberbeamer.sty #+latex_header: \usepackage{appendixnumberbeamer} # # Colors, color boxes # #+latex_header: \usepackage{color} #+latex_header: \usepackage{soul} # http://tex.stackexchange.com/questions/41683/why-is-it-that-coloring-in-soul-in-beamer-is-not-visible #+latex_header: \makeatletter #+latex_header: \newcommand\SoulColor{% #+latex_header: \let\set@color\beamerorig@set@color #+latex_header: \let\reset@color\beamerorig@reset@color} #+latex_header: \makeatother #+latex_header: \SoulColor #+LATEX_HEADER: \usepackage{listings} diff --git a/talks-public/2019-02-04-copyleftconf/this/prelude-swh+intel.org b/talks-public/2019-02-04-copyleftconf/this/prelude-swh+intel.org index 9d8e37b..123d63b 100644 --- a/talks-public/2019-02-04-copyleftconf/this/prelude-swh+intel.org +++ b/talks-public/2019-02-04-copyleftconf/this/prelude-swh+intel.org @@ -1,93 +1,93 @@ #+BEAMER_HEADER: \titlegraphic{\raisebox{-3mm}{\includegraphics[width=\extblockscale{0.2\textwidth}]{this/intel-logo}}\hspace{0.1\textwidth}\includegraphics[width=\extblockscale{0.45\textwidth}]{SWH-logo+motto}} #+STARTUP: hidestars # activate org-beamer-mode minor mode automatically #+STARTUP: beamer # org export options #+LANGUAGE: en #+OPTIONS: H:2 num:t toc:nil \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t #+OPTIONS: TeX:t LaTeX:t skip:nil d:nil todo:t pri:nil tags:not-in-toc #+EXPORT_SELECT_TAGS: export #+EXPORT_EXCLUDE_TAGS: noexport #+LINK_UP: #+LINK_HOME: #+LaTeX_CLASS: beamer #+LaTeX_CLASS_OPTIONS: [presentation,xcolor=table] # # important font choice! # #+LaTeX_HEADER: \usepackage{libertine} # # Let's move that logo... # #+LaTeX_HEADER: \usepackage{animate} #+COLUMNS: %40ITEM %10BEAMER_env(Env) %9BEAMER_envargs(Env Args) %10BEAMER_act(Act) %4BEAMER_col(Col) %10BEAMER_extra(Extra) %8BEAMER_opt(Opt) # have the theme desired #+latex_header: \mode{\usetheme{swh} \beamertemplatenavigationsymbolsempty \setbeamertemplate{navigation symbols}{} \setbeamertemplate{headline}{} #+latex_header: \setbeamertemplate{footline} #+latex_header: { #+latex_header: \leavevmode% #+latex_header: \hbox{% #+latex_header: \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.25ex,dp=1ex,center]{author in head/foot}% #+latex_header: \usebeamerfont{author in head/foot}\insertshortauthor%~~\beamer@ifempty{\insertshortinstitute}{}{(\insertshortinstitute)} #+latex_header: \end{beamercolorbox}% #+latex_header: \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.25ex,dp=1ex,right]{title in head/foot}% #+latex_header: \usebeamerfont{title in head/foot}\insertshorttitle{}\hspace*{2em} #+latex_header: \usebeamerfont{date in head/foot}\insertshortdate{}\hspace*{2em} #+latex_header: \insertframenumber{} / \inserttotalframenumber\hspace*{2ex} #+latex_header: \end{beamercolorbox}}% #+latex_header: \vskip0pt% #+latex_header: } #+latex_header: } # some color -#+latex_header: \rowcolors[]{1}{blue!10}{blue!05} +# #+latex_header: \rowcolors[]{1}{blue!10}{blue!05} # no longer works with texlive >= 2022 # #+latex_header: \AtBeginSection[] {\begin{frame}<*> \frametitle{Outline} \tableofcontents[currentsection]\end{frame} \addtocounter{framenumber}{-1}} # set the paths for images #+latex_header: \graphicspath{% #+latex_header: {../../common/images/}{../../common/logos/}% #+latex_header: {pics/}{../images/}{../../images/}{../pics/}{../../pics/}% #+latex_header: {../figures/}{../../figures/}{../logos/}{../../logos/}{../../../logos/}% #+latex_header: {../../communication/web/graphics/carousel/}% #+latex_header: {../../communication/web/graphics/pictos/png/400x400/}% #+latex_header: } # some default information I did not find how to set this in org-mode #+latex_header: \institute[Irill/INRIA/UPD]{\url{roberto@dicosmo.org}} # to add the picblock macro #+latex_header: \usepackage{extblocks} #+latex_header: \usepackage{pgfpages} #+latex_header: \usepackage{animate} #+latex_header: \usepackage{alltt} # # Itemize in multiple columns # #+latex_header: \usepackage{multicol} # # Requires # # http://www-ljk.imag.fr/membres/Jerome.Lelong/latex/appendixnumberbeamer.sty #+latex_header: \usepackage{appendixnumberbeamer} # # Colors, color boxes # #+latex_header: \usepackage{color} #+latex_header: \usepackage{soul} # http://tex.stackexchange.com/questions/41683/why-is-it-that-coloring-in-soul-in-beamer-is-not-visible #+latex_header: \makeatletter #+latex_header: \newcommand\SoulColor{% #+latex_header: \let\set@color\beamerorig@set@color #+latex_header: \let\reset@color\beamerorig@reset@color} #+latex_header: \makeatother #+latex_header: \SoulColor #+LATEX_HEADER: \usepackage{listings} diff --git a/talks-public/2021-12-07-ihedn/this/prelude.org b/talks-public/2021-12-07-ihedn/this/prelude.org index db6d37f..02e32db 100644 --- a/talks-public/2021-12-07-ihedn/this/prelude.org +++ b/talks-public/2021-12-07-ihedn/this/prelude.org @@ -1,96 +1,96 @@ # #+BEAMER_HEADER: \titlegraphic{\includegraphics[width=\extblockscale{0.7\textwidth}]{SWH-logo+motto}} #+STARTUP: hidestars # activate org-beamer-mode minor mode automatically #+STARTUP: beamer # org export options #+LANGUAGE: en #+OPTIONS: H:2 num:t toc:nil \n:nil @:t ::t |:t ^:t -:t f:t *:t <:t #+OPTIONS: TeX:t LaTeX:t skip:nil d:nil todo:t pri:nil tags:not-in-toc #+EXPORT_SELECT_TAGS: export #+EXPORT_EXCLUDE_TAGS: noexport #+LINK_UP: #+LINK_HOME: #+LaTeX_CLASS: beamer #+LaTeX_CLASS_OPTIONS: [presentation,xcolor=table] # # important font choice! # #+LaTeX_HEADER: \usepackage{libertine} # # Let's move that logo... # #+LaTeX_HEADER: \usepackage{animate} #+COLUMNS: %40ITEM %10BEAMER_env(Env) %9BEAMER_envargs(Env Args) %10BEAMER_act(Act) %4BEAMER_col(Col) %10BEAMER_extra(Extra) %8BEAMER_opt(Opt) # have the theme desired #+latex_header: \mode{\usetheme{swh} \beamertemplatenavigationsymbolsempty \setbeamertemplate{navigation symbols}{} \setbeamertemplate{headline}{} #+latex_header: \setbeamertemplate{footline} #+latex_header: { #+latex_header: \leavevmode% #+latex_header: \hbox{% #+latex_header: \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.25ex,dp=1ex,center]{author in head/foot}% #+latex_header: \usebeamerfont{author in head/foot}\insertshortauthor%~~\beamer@ifempty{\insertshortinstitute}{}{(\insertshortinstitute)} #+latex_header: \end{beamercolorbox}% #+latex_header: \begin{beamercolorbox}[wd=.5\paperwidth,ht=2.25ex,dp=1ex,right]{title in head/foot}% #+latex_header: \usebeamerfont{title in head/foot}\insertshorttitle{}\hspace*{2em} #+latex_header: \usebeamerfont{date in head/foot}\insertshortdate{}\hspace*{2em} #+latex_header: \insertframenumber{} / \inserttotalframenumber\hspace*{2ex} #+latex_header: \end{beamercolorbox}}% #+latex_header: \vskip0pt% #+latex_header: } #+latex_header: } # some color -#+latex_header: \rowcolors[]{1}{blue!10}{blue!05} +# #+latex_header: \rowcolors[]{1}{blue!10}{blue!05} # no longer works with texlive >= 2022 # set the paths for images #+latex_header: \graphicspath{% #+latex_header: {../../common/images/}{../../common/logos/}% #+latex_header: {pics/}{../images/}{../../images/}{../pics/}{../../pics/}% #+latex_header: {../figures/}{../../figures/}{../logos/}{../../logos/}{../../../logos/}% #+latex_header: {../../communication/web/graphics/carousel/}% #+latex_header: {../../communication/web/graphics/pictos/png/400x400/}% #+latex_header: } # some default information I did not find how to set this in org-mode # to add the picblock macro #+latex_header: \usepackage{extblocks} #+latex_header: \usepackage{pgfpages} #+latex_header: \usepackage{animate} #+latex_header: \usepackage{alltt} # # Itemize in multiple columns # #+latex_header: \usepackage{multicol} # # Requires # # http://www-ljk.imag.fr/membres/Jerome.Lelong/latex/appendixnumberbeamer.sty #+latex_header: \usepackage{appendixnumberbeamer} # # Colors, color boxes # #+latex_header: \usepackage{color} #+latex_header: \usepackage{soul} # http://tex.stackexchange.com/questions/41683/why-is-it-that-coloring-in-soul-in-beamer-is-not-visible #+latex_header: \makeatletter #+latex_header: \newcommand\SoulColor{% #+latex_header: \let\set@color\beamerorig@set@color #+latex_header: \let\reset@color\beamerorig@reset@color} #+latex_header: \makeatother #+latex_header: \SoulColor #+LATEX_HEADER: \usepackage{listings} #+LATEX_HEADER: \usepackage{forcebeamermode} # # Color of links # #+LATEX_HEADER: \hypersetup{colorlinks,linkcolor=,urlcolor=cyan} diff --git a/talks-public/2022-05-31-HalPartners/2022-05-31-HalPartners.org b/talks-public/2022-05-31-HalPartners/2022-05-31-HalPartners.org new file mode 100644 index 0000000..cd28ab4 --- /dev/null +++ b/talks-public/2022-05-31-HalPartners/2022-05-31-HalPartners.org @@ -0,0 +1,810 @@ +#+COLUMNS: %40ITEM %10BEAMER_env(Env) %9BEAMER_envargs(Env Args) %10BEAMER_act(Act) %4BEAMER_col(Col) %10BEAMER_extra(Extra) %8BEAMER_opt(Opt) +#+TITLE: Software as a pillar for open science +#+SUBTITLE: policy, needs, and how to address them +# #+AUTHOR: Roberto Di Cosmo +# #+EMAIL: roberto@dicosmo.org @rdicosmo @swheritage +#+BEAMER_HEADER: \date{May 2022} +#+BEAMER_HEADER: \title[Towards a Software Pillar of Open Science]{The Software Pillar of Open Science} +#+BEAMER_HEADER: \author[R. Di Cosmo~~~~ roberto@dicosmo.org ~~~~ (CC-BY 4.0)]{Roberto Di Cosmo} +#+BEAMER_HEADER: \institute[Software Heritage]{Director, Software Heritage\\Inria and Universit\'e de Paris Cit\'e} +# #+BEAMER_HEADER: \setbeameroption{show notes on second screen} +#+BEAMER_HEADER: \setbeameroption{hide notes} +#+KEYWORDS: software heritage legacy preservation knowledge mankind technology +#+LATEX_HEADER: \usepackage{tcolorbox} +#+LATEX_HEADER: \definecolor{links}{HTML}{2A1B81} +#+LATEX_HEADER: \definecolor{links}{HTML}{0ADB11} +#+LATEX_HEADER: \hypersetup{colorlinks,linkcolor=,urlcolor=links} +#+LATEX_HEADER: \hypersetup{colorlinks,linkcolor=,urlcolor=cyan} + +# +# 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: \DeclareUnicodeCharacter{66D}{\FiveStar} + +# +# If you want to change the title logo it's here +# +# +BEAMER_HEADER: \titlegraphic{\includegraphics[width=0.5\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: \addtocounter{framenumber}{-1} +* Introduction :noexport: +#+INCLUDE: "../../common/modules/rdc-bio.org::#main" :only-contents t :minlevel 2 +* Software and Open Science +** Why Open Science? :noexport: +#+BEAMER: \vspace{-.5em} +*** Open Science ([[https://www.ouvrirlascience.fr/wp-content/uploads/2021/10/Second_French_Plan-for-Open-Science_web.pdf][Second National Plan for Open Science]], France, 2021) + /Unhindered/ dissemination of results, methods and products from scientific + research.\\ + It draws on /the opportunity provided by recent digital progress/ + to develop /open access/ to /publications/ and – as much as possible – /data/, + /source code/ and /research methods/. +#+BEAMER: \pause +#+BEAMER: \vspace{-.3em} +*** Jean-Eric Paquet (EU DGRI, [[https://www.eosc.eu/sites/default/files/EOSC-SRIA-V1.0_15Feb2021.pdf][on the objective of Open Science]]) +# Preface of EOSC SRIA https://www.eosc.eu/sites/default/files/EOSC-SRIA-V1.0_15Feb2021.pdf + “Increase /scientific quality/, the /pace of discovery and technological + development/, as well as /societal trust in science/.” +#+BEAMER: \pause +#+BEAMER: \vspace{-.1em} +*** Mariya Gabriel ([[https://www.s4d4c.eu/insights-from-commissioner-mariya-gabriel-towards-the-european-union-science-diplomacy/][EU Commissionneer]] for Research) +# From the article: https://www.s4d4c.eu/insights-from-commissioner-mariya-gabriel-towards-the-european-union-science-diplomacy/ + The COVID-19 crisis has also shown that cooperation at international level + in research and innovation is more important than ever, including through + /open access to data and results/. /No nation, no country can tackle any of + these global challenges alone/. +#+BEAMER: \pause +#+BEAMER: \vspace{-.3em} +*** Yuval Noah Harari (on COVID 19) + \hfill /“The real antidote [to epidemic] is/ scientific knowledge /and/ global cooperation.” +** Software is a pillar of Open Science + #+INCLUDE: "../../common/modules/swh-ardc.org::#pillaropenscience" :only-contents t :minlevel 3 +#+BEAMER: \pause +*** + \hfill Preserving (the history of) source code is necessary for /reproducibility/ +** Software /Source Code/ is Precious Knowledge + #+INCLUDE: "../../common/modules/source-code-different-short.org::#softwareisdifferent" :only-contents t :minlevel 3 +* Policy framework and growing needs +** The Paris Call on Software Source code (2019, UNESCO) + #+INCLUDE: "../../common/modules/policyactions.org::#pariscall2019science" :only-contents t :minlevel 3 +** Second French National plan for Open Science (2021, MESRI) + #+INCLUDE: "../../common/modules/policyactions.org::#pnso2" :only-contents t :minlevel 3 +** Research Software is getting recognized + #+INCLUDE: "../../common/modules/policyactions.org::#awards2022" :only-contents t :minlevel 3 +** A plurality of needs that we must address + #+INCLUDE: "../../common/modules/swh-ardc.org::#userneeds" :only-contents t :minlevel 3 +** Archive, Reference, Describe, Cite and Credit + #+INCLUDE: "../../common/modules/swh-ardc.org::#ardc" :only-contents t :minlevel 3 +* Can you address these needs? +** A word of warning: forges are /not/ archives! +*** 2015: the first big bad news + Google Code and Gitorious.org shutdown: ~1M endangered repositories + - broken links in the web of knowledge (my papers too) +#+BEAMER: \pause +*** 2019: big bad news keep coming in + - summer 2019: BitBucket announces Mercurial VCS sunset + - july 2020: BitBucket erases /250.000+/ repositories (including research software) +#+BEAMER: \pause +*** 2021: ... in Academia too + - october 2021: Inria's old gforge is unplugged + + [[https://github.com/ocaml/opam-repository/issues/19757][breaks the build chain]] of the OCaml package manager (Opam) + +#+BEAMER: \pause +*** Bottomline + \hfill we need a universal archive of software source code: \pause now we have one! +** Software Heritage in a nutshell \hfill www.softwareheritage.org +#+BEAMER: \transdissolve +#+INCLUDE: "../../common/modules/swh-goals-oneslide-vertical.org::#goals" :only-contents t :minlevel 3 +** The largest software archive, a shared infrastructure + #+latex: \begin{center} + #+ATTR_LATEX: :width 0.7\linewidth + file:SWH-as-foundation-slim.png + #+latex: \end{center} + #+BEAMER: \pause + #+latex: \centering + #+ATTR_LATEX: :width \extblockscale{.9\linewidth} + file:archive-growth.png +** An international, non profit initiative\hfill built for the long term + :PROPERTIES: + :CUSTOM_ID: support + :END: +*** Sharing the vision :B_block: + :PROPERTIES: + :CUSTOM_ID: endorsement + :BEAMER_COL: .5 + :BEAMER_env: block + :END: + #+LATEX: \begin{center}{\includegraphics[width=\extblockscale{.4\linewidth}]{unesco_logo_en_285}}\end{center} + #+LATEX: \vspace{-0.8cm} + #+LATEX: \begin{center}\vskip 1em \includegraphics[width=\extblockscale{1.4\linewidth}]{support.pdf}\end{center} + #+latex: \small And many more ...\\ + #+latex:\mbox{}~~~~~~~\tiny\url{www.softwareheritage.org/support/testimonials} +#+BEAMER: \pause +*** Donors, members, sponsors :B_block: + :PROPERTIES: + :CUSTOM_ID: sponsors + :BEAMER_COL: .5 + :BEAMER_env: block + :END: + #+LATEX: \begin{center}\includegraphics[width=\extblockscale{.4\linewidth}]{inria-logo-new}\end{center} + #+LATEX: \begin{center} + # #+LATEX: \includegraphics[width=\extblockscale{.2\linewidth}]{sponsors-levels.pdf} + #+LATEX: \colorbox{white}{\includegraphics[width=\extblockscale{1.4\linewidth}]{sponsors.pdf}} + #+LATEX: \end{center} +# - sponsoring / partnership :: \hfill \url{sponsorship.softwareheritage.org} +*** :B_ignoreheading: + :PROPERTIES: + :BEAMER_env: ignoreheading + :END: +*** Research collaboration :B_picblock:noexport: + :PROPERTIES: + :BEAMER_COL: .5 + :BEAMER_env: picblock + :BEAMER_OPT: pic=Qwant_Logo, leftpic=true + :END: + source code search engine +*** See more :noexport: + \hfill\tiny\url{http:://www.softwareheritage.org/support/testimonials} +*** Global network :B_picblock:noexport: + :PROPERTIES: + :BEAMER_COL: .5 + :BEAMER_env: picblock + :BEAMER_OPT: pic=fossid, leftpic=true, width=.3\linewidth + :END: + - first *independent mirror* + - increased reliability + +** Addressing the four needs... \hfill (see [[https://dx.doi.org/10.1007/978-3-030-52200-1_36][ICMS 2020]] for details) + #+INCLUDE: "../../common/modules/swh-ardc.org::#swh-ardc-short" :only-contents t :minlevel 3 +** HAL and Software Heritage: building a curated software catalog + #+INCLUDE: "../../common/modules/swh-ardc.org::#halswhoverview" :only-contents t :minlevel 3 +* Yes you can! +** An example is worth a thousand words + #+INCLUDE: "../../common/modules/swh-ardc.org::#demoswhhal" :only-contents t :minlevel 3 +* Call to action +** Best practices for ARDC actionable today ... + #+INCLUDE: "../../common/modules/swh-ardc.org::#ardc-best-france" :only-contents t :minlevel 3 +** Bottomline +*** HAl+SWH let you address all the needs at once... + - /researcher, engineer/: archival, reference, credit, CV etc. /with a little effort from them/ + - /labs, organizations/: track and report software production in a simple way + - /technology transfer offices/: view the software production + - /national level/: a /curated/ catalog of the software production + #+BEAMER: \pause +*** ... with a little effort from your side + - Update the Open Science policy to include software + - Train on the use of SWH and HAL for software + - Join the network of HAL moderators for software + #+BEAMER: \pause +*** +#+LATEX: \centering{\large it's a long road, but together we can make it}\\[1em] + + #+latex: \centering{\huge\bf Questions?} +* END + \end{document} +* Appendix :B_appendix: + :PROPERTIES: + :BEAMER_env: appendix + :END: +** + \vfill + \centerline{\Huge Appendix} + \vfill +* Policy news +** The Paris Call on Software Source code (2019, UNESCO) +#+BEAMER: \vspace{-.8em} +*** :B_column:BMCOL: + :PROPERTIES: + :BEAMER_col: .53 + :BEAMER_env: column + :END: + #+ATTR_LATEX: :width .65\linewidth + file:UNESCOParisCallMeeting.png + UNESCO, Inria, Software Heritage invite\\ + [[https://en.unesco.org/news/experts-call-greater-recognition-software-source-code-heritage-sustainable-development][40 international experts to meet in Paris]] + #+BEAMER: \pause +*** :B_column:BMCOL: + :PROPERTIES: + :BEAMER_col: .5 + :BEAMER_env: column + :END: + #+ATTR_LATEX: :width .6\linewidth + file:paris_call_ssc_cover.jpg + [[https://en.unesco.org/foss/paris-call-software-source-code][The call is published on Feb 2019]]\pause +*** :B_ignoreheading: + :PROPERTIES: + :BEAMER_env: ignoreheading + :END: +# #+BEAMER: \vspace{-.3em} +*** + :PROPERTIES: + :BEAMER_COL: 1.06 + :BEAMER_env: block + :END: + #+LATEX: {\it + “[We call to] promote software development as a valuable research activity, + and research software as a key enabler for Open Science/Open Research, + sharing good practices and recognising in the careers of academics their + contributions to high quality software development, in all their forms” + #+LATEX: } + https://en.unesco.org/foss/paris-call-software-source-code +** The UNESCO recommendations for Open Science, 2018-2021 + #+INCLUDE: "../../common/modules/policyactions.org::#unesco2021" :only-contents t :minlevel 3 +** The EOSC SIRS report: Software Source Code and Open Science, 2020 + #+INCLUDE: "../../common/modules/policyactions.org::#eoscsirs2020-expanded" :only-contents t :minlevel 3 +** French National plan for Open Science, 2021-2024 + #+LATEX: \vspace{-.3em} + #+INCLUDE: "../../common/modules/policyactions.org::#PNSO2" :only-contents t :minlevel 3 + #+BEAMER: \pause +*** + \hfill The "Collège Logiciel" of the National Committee on Open Science (CoSO) is now live! +** Software in the EOSC + #+INCLUDE: "../../common/modules/policyactions.org::#eoscswtf2021" :only-contents t :minlevel 3 +** Call to action: let's engage with policy makers (it may be us!) :noexport: +#+BEAMER: \vspace{-.5em} +*** Institutional representation :B_block: + :PROPERTIES: + :BEAMER_COL: .5 + :BEAMER_env: block + :END: + we need an (open source) software VP in + - universities + - ministries + - governments +#+BEAMER: \pause +*** Funding for infrastructures :B_block: + :PROPERTIES: + :BEAMER_env: block + :BEAMER_COL: .5 + :END: + push for funding instruments adapted to digital infrastructures (e.g. ESFRI): + + cost of human resources is /predominant/ + + /much shorter/ time frame +#+BEAMER: \pause +*** :B_ignoreheading: + :PROPERTIES: + :BEAMER_env: ignoreheading + :END: +*** Set the default to open: pass the message + /publicly funded research software should be open source/ \\ + \hfill exceptions must be justified +#+BEAMER: \pause +*** Career evaluation and incentives + - recognize /quality/ software development + + see e.g. [[https://hal-lara.archives-ouvertes.fr/hal-03110723][the 2021 Inria guidelines]] (in french) + and [[https://hal.archives-ouvertes.fr/hal-02135891][this CiSE 2020 article]] (in english) + - keep the human in the loop, avoid number games +** The floor is yours +*** +#+LATEX: \centering{\large it's a long road, but together we can make it}\\[1em] + + #+latex: \centering{\huge\bf Questions?} +*** References + #+BEGIN_EXPORT latex + \begin{thebibliography}{Foo Bar, 1969} + \footnotesize +% \bibitem{SwForumEu2021} R. Di Cosmo, \emph{A revolutionary infrastructure for Open Source}, 2021, EU Software Forum \href{https://annex.softwareheritage.org/public/talks/2021/2021-03-24-SwForum.pdf}{(slides)} \href{https://youtu.be/AwY527kDMfM?t=178}{(video)} + \bibitem{UNESCOOS} UNESCO, \emph{Draft recommendations on Open Science} + \newblock 2021, \href{https://unesdoc.unesco.org/ark:/48223/pf0000378381.locale=en}{(online)} + \bibitem{PNSO2} French Ministry of Research, \emph{Second National Plan for Open Science} + \newblock 2021, \href{https://www.enseignementsup-recherche.gouv.fr/cid159131/le-plan-national-pour-la-science-ouverte-2021-2024-vers-une-generalisation-de-la-science-ouverte-en-france.html}{(online)} + \bibitem{EOSCSirs2020} EOSC SIRS Task Force, \emph{Scholarly Infrastructures for Research Software} + \newblock 2020, Publications office of the European Commission, \href{https://doi.org/10.2777/28598}{(10.2777/28598)} + \bibitem{DiCosmo2020d} R. Di Cosmo, \emph{Archiving and Referencing Source Code with Software Heritage} + \newblock International Conference on Mathematical Software 2020 \href{https://dx.doi.org/10.1007/978-3-030-52200-1_36}{(10.1007/978-3-030-52200-1\_36)} +% \bibitem{DiCosmo2019} R. Di Cosmo, M. Gruenpeter, S. Zacchiroli\newblock +% \emph{Referencing Source Code Artifacts: a Separate Concern in Software Citation},\newblock +% CiSE 2020 \href{https://dx.doi.org/10.1109/MCSE.2019.2963148}{(10.1109/MCSE.2019.2963148)} +% \href{https://hal.archives-ouvertes.fr/hal-02446202}{(hal-02446202)} +% \bibitem{alliez:hal-02135891} P. Alliez, R. Di Cosmo, B. Guedj, A. Girault, M.-S. Hacid, A. Legrand and N. Rougier\newblock +% \emph{Attributing and referencing (research) software: Best practices and outlook from Inria}, \newblock +% CiSE 2020 \href{https://doi.ieeecomputersociety.org/10.1109/MCSE.2019.2949413}{(10.1109/MCSE.2019.2949413)} +% \href{https://hal.archives-ouvertes.fr/hal-02135891}{(hal-02135891)} + \bibitem{Abramatic2018} J.F. Abramatic, R. Di Cosmo, S. Zacchiroli, + \emph{Building the Universal Archive of Source Code} + \newblock CACM, October 2018 \href{https://doi.org/10.1145/3183558}{(10.1145/3183558)} + \end{thebibliography} + #+END_EXPORT + +* Introduction +** Source code is /special/ (software is /not/ data) + # Was: #+INCLUDE: "../../common/modules/swh-ardc.org::#swnotdata" :only-contents t :minlevel 3 +*** /Executable/ and /human readable/ knowledge \hfill copyright law :noexport: + /“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 + + /research software/ a thin top layer + - sophisticated /developer communities/ +*** :B_ignoreheading: + :PROPERTIES: + :BEAMER_env: ignoreheading + :END: +#+BEAMER: \pause +*** The human side + design, algorithm, code, test, documentation, community, funding\\ + \hfill and so many more facets ... +** Where is the source code? +*** Collaborative development platforms (aka "forges") + - BitBucket, GitLab(.com), GitHub, etc. + - support for version control, issues, etc. + - example: + + https://github.com/rdicosmo/parmap + + https://gitlab.inria.fr/gt-sw-citation/bibtex-sw-entry/ +#+BEAMER: \pause +*** Distribution platforms + - CTAN, CRAN, PyPi, Debian, etc. + - example: https://ctan.org/pkg/biblatex-software +#+BEAMER: \pause +*** Archives + - Software Heritage + - example: [[https://archive.softwareheritage.org/swh:1:dir:92a6d0b9953aa3645ffac6bb4fb30a02932872eb;origin=https://gitlab.inria.fr/gt-sw-citation/bibtex-sw-entry;visit=swh:1:snp:05753fe748b7b85cbd0a9e2bea89aac5268b06c6;anchor=swh:1:rev:7c621448de21b0950cdff2dda37834cd4b389bfa][archived version of biblatex-software]] +* Adoption +** Growing adoption of SWH in Academia (selection) + #+INCLUDE: "../../common/modules/swh-adoption-academic.org::#adoption" :only-contents t :minlevel 3 +* Demo time! +** Overview of the Software Heritage / HAL synergy + #+ATTR_LATEX: :width \linewidth + file:hal-swh-overview.png +** A walkthrough + #+INCLUDE: "../../common/modules/swh-ardc.org::#demoswhhal" :only-contents t :minlevel 3 +** Growing adoption of SWH in Academia (selection) + #+INCLUDE: "../../common/modules/swh-adoption-academic.org::#adoption" :only-contents t :minlevel 3 +** An international, non profit initiative\hfill built for the long term + :PROPERTIES: + :CUSTOM_ID: support + :END: +*** Sharing the vision :B_block: + :PROPERTIES: + :CUSTOM_ID: endorsement + :BEAMER_COL: .5 + :BEAMER_env: block + :END: + #+LATEX: \begin{center}{\includegraphics[width=\extblockscale{.4\linewidth}]{unesco_logo_en_285}}\end{center} + #+LATEX: \vspace{-0.8cm} + #+LATEX: \begin{center}\vskip 1em \includegraphics[width=\extblockscale{1.4\linewidth}]{support.pdf}\end{center} + #+latex: \small And many more ...\\ + #+latex:\mbox{}~~~~~~~\tiny\url{www.softwareheritage.org/support/testimonials} +#+BEAMER: \pause +*** Donors, members, sponsors :B_block: + :PROPERTIES: + :CUSTOM_ID: sponsors + :BEAMER_COL: .5 + :BEAMER_env: block + :END: + #+LATEX: \begin{center}\includegraphics[width=\extblockscale{.4\linewidth}]{inria-logo-new}\end{center} + #+LATEX: \begin{center} + # #+LATEX: \includegraphics[width=\extblockscale{.2\linewidth}]{sponsors-levels.pdf} + #+LATEX: \colorbox{white}{\includegraphics[width=\extblockscale{1.4\linewidth}]{sponsors.pdf}} + #+LATEX: \end{center} +# - sponsoring / partnership :: \hfill \url{sponsorship.softwareheritage.org} +*** :B_ignoreheading: + :PROPERTIES: + :BEAMER_env: ignoreheading + :END: +*** Research collaboration :B_picblock:noexport: + :PROPERTIES: + :BEAMER_COL: .5 + :BEAMER_env: picblock + :BEAMER_OPT: pic=Qwant_Logo, leftpic=true + :END: + source code search engine +*** See more :noexport: + \hfill\tiny\url{http:://www.softwareheritage.org/support/testimonials} +*** Global network :B_picblock:noexport: + :PROPERTIES: + :BEAMER_COL: .5 + :BEAMER_env: picblock + :BEAMER_OPT: pic=fossid, leftpic=true, width=.3\linewidth + :END: + - first *independent mirror* + - increased reliability + +** Call to action on ARDC: let's foster adoption! +*** Train students and colleagues to [[https://www.softwareheritage.org/save-and-reference-research-software/][archive and reference relevant source code]] +#+BEAMER: \vspace{-.5em} +***** :B_column:BMCOL: + :PROPERTIES: + :BEAMER_col: .05 + :BEAMER_env: column + :END: +***** :B_column:BMCOL: + :PROPERTIES: + :BEAMER_col: .45 + :BEAMER_env: column + :END: + + full details in the [[https://dx.doi.org/10.1007/978-3-030-52200-1_36][ICMS 2020]] article +***** :B_column:BMCOL: + :PROPERTIES: + :BEAMER_col: .5 + :BEAMER_env: column + :END: + + short operational [[https://www.softwareheritage.org/save-and-reference-research-software/][HOWTO online]]\pause +***** :B_ignoreheading: + :PROPERTIES: + :BEAMER_env: ignoreheading + :END: +*** Engage conferences, journals, learned societies to use Software Heritage and SWHIDs + APIs for [[https://save.softwareheritage.org][save code now]] and [[https://hal.inria.fr/hal-01872189][deposit]] are available to integrate with +#+BEAMER: \vspace{-.5em} +***** :B_column:BMCOL: + :PROPERTIES: + :BEAMER_col: .25 + :BEAMER_env: column + :END: + + Research Articles +***** :B_column:BMCOL: + :PROPERTIES: + :BEAMER_col: .42 + :BEAMER_env: column + :END: + + Artifact Evaluation Committees +***** :B_column:BMCOL: + :PROPERTIES: + :BEAMER_col: .3 + :BEAMER_env: column + :END: + + Badging initiatives +***** :B_ignoreheading: + :PROPERTIES: + :BEAMER_env: ignoreheading + :END: + #+BEAMER: \pause +*** Help grow and structure the community + - Promote the [[https://www.softwareheritage.org/ambassadors/][ambassador program]] + - Encourage our institutions to + + include Software Heritage in their Open Science policy + + become [[https://www.softwareheritage.org/support/sponsors/][member/sponsor]] + + build a Software Heritage mirror (see ENEA) +* What is at stake before and beyond ARDC +** What is at stake: before ARDC + #+INCLUDE: "../../common/modules/swh-ardc.org::#beforeardc" :only-contents t :minlevel 3 +** What is at stake: beyond ARDC + #+INCLUDE: "../../common/modules/swh-ardc.org::#beyondardc-evaluation" :only-contents t :minlevel 3 +* State of affairs in CS +** The state of the art (in CS!) is far from ideal +#+BEAMER: \vspace{-.6em} +*** ICSE (Zannier, Melrik, Maurer, 2006) :B_block: + :PROPERTIES: + :BEAMER_COL: .45 + :BEAMER_env: block + :END: + absence of replication studies +*** [[https://fr.slideshare.net/carloghezzi18/icse-2009-keynote-15919951][ACM TOSEM 2001 to 2006]] \hfill C. Ghezzi :B_block: + :PROPERTIES: + :BEAMER_COL: .55 + :BEAMER_env: block + :END: + 60% papers with tools: *only 20%* /installable/ +*** :B_ignoreheading: + :PROPERTIES: + :BEAMER_env: ignoreheading + :END: +*** Collberg's [[http://reproducibility.cs.arizona.edu/][2015 reproducibility study]] :B_picblock: + :PROPERTIES: + :BEAMER_env: picblock + :BEAMER_opt: pic=collberg-outcome-new.png, width=.6\linewidth, leftpic=true + :END: + 601 mainstream papers + - 508 with tools + - *only 40%* /installable/ +#+BEAMER: \pause +#+BEAMER: \vspace{-.6em} +*** Main reasons: source code (/or the right version of it/) cannot be found + - *policy issue*: opening up the code of research software + - *infrastructures*: archive and reference it\hfill *let's start here* + +* Detailed addressing ARDC +** Addressing the A(rchive) + #+INCLUDE: "../../common/modules/swh-ardc.org::#swh-a" :only-contents t :minlevel 3 +** Recent preservation news +*** Saving 250.000 endangered repositories... + - summer 2019: BitBucket announce Mercurial VCS phase out + - fall 2019: Software Heritage teams up with Octobus (funded by NLNet, thanks!) + - july 2020: BitBucket erases /250.000/ repositories + - august 2020: [[https://bitbucket-archive.softwareheritage.org][bitbucket-archive.softwareheritage.org]] is live +#+BEAMER: \pause +*** ... preserving the web of knowledge \hfill (original tweet [[https://twitter.com/gabrielaltay/status/1300218789762662401][is here]] ) :B_picblock: + :PROPERTIES: + :BEAMER_env: picblock + :BEAMER_OPT: pic=bitbucket_swh_praise.png, width=.6\linewidth, leftpic=true + :END: + +\\ + *Bottomline*\\ + /explicit deposit/ is important, ...\\ + \mbox{}\hfill ... and we must promote it...\hfill\mbox{}\\ + \mbox{}\hfill ... but will never be enough.\\ +\mbox{}\\ +\mbox{}\hfill /(think also of all software dependencies!)/ +** R(eference): granularity and identifiers \hfill [[http://doi.org/10.15497/RDA00053][10.15497/RDA00053]] + #+INCLUDE: "../../common/modules/swh-ardc.org::#swh-r" :only-contents t :minlevel 3 +** Addressing D(escribe) and C(ite) in ARDC (see [[https://dx.doi.org/10.1007/978-3-030-52200-1_36][ICMS 2020]] for details) + #+INCLUDE: "../../common/modules/swh-ardc.org::#swh-dc" :only-contents t :minlevel 3 + +* FAIR +** What about FAIR? (Findable, Accessible, Interoperable, Reusable) +*** FAIR data principles /for data/ + *in a nutshell:* metadata, metadata, metadata all over the place (makes sense for data)\pause +*** But software is /not data/ ... + the terms /interoperability/ and /reusability/ have precise technical meaning for software, + and /differ significantly/ from what is intended by the I and R of FAIR; + - see the entries for [[https://en.wikipedia.org/wiki/Interoperability#Software][software interoperability]] and [[https://en.wikipedia.org/wiki/Reusability][software reusability]] + - it is /very difficult/ to achieve these properties even for commercial software developed by multi billion dollars corporations\pause +*** FAIR for software is a distraction + \hfill let's focus on the real issues at stake: ARDC a good starting point +* SWHIDs +** R(eference): granularity and identifiers \hfill [[http://doi.org/10.15497/RDA00053][10.15497/RDA00053]] + #+LATEX: \centering\forcebeamerstart + #+LATEX: \only<1>{\includegraphics[width=0.8\linewidth]{Granularity-Level-animated-0.png}} + #+LATEX: \only<2>{\includegraphics[width=0.8\linewidth]{Granularity-Level-animated-1.png}} + #+LATEX: \only<3>{\includegraphics[width=0.8\linewidth]{Granularity-Level-animated-2.png}} + #+LATEX: \only<4>{\includegraphics[width=0.8\linewidth]{Granularity-Level-animated-3.png}} + #+LATEX: \forcebeamerend + #+LATEX: \only<1>{\begin{block}{}\centering Top concept layers vs. bottom artifact layers\end{block}} + #+LATEX: \only<2>{\begin{block}{}\centering Extrinsic identifiers are key for the concept layers\end{block}} + #+LATEX: \only<3>{\begin{block}{}\centering Intrinsic identifiers are key for the artifact layers\end{block}} + #+LATEX: \only<4>{\begin{block}{}\centering In some cases, extrinsic identifiers can be added too\end{block}} + +** Extrinsic and Intrinsic identifiers in a nutshell +*** Extrinsic identifiers: no /per se/ relation with the designated Object + A /register/ keeps the correspondence between the identifier and the object + - pre-internet era :: passport number, social security number, ISBN, ISSN, etc. + - internet era :: DOI, Handle, Ark, PURLs, RRID, etc.\pause +*** Intrinsic identifiers: derived from the designated Object + /No register/ needed to keep the correspondence between the identifier and the object + - pre-internet era :: musical notation, chemical notation (/NaCl/ is table salt)\pause + - internet era :: cryptographic hashes for distributed software development, Bitcoin\pause +*** + \hfill more in [[https://www.softwareheritage.org/2020/07/09/intrinsic-vs-extrinsic-identifiers/][this dedicated blog post]] (with pointers to literature) +** Meet the Software Heritage Identifiers (SWHIDs) \hfill [[https://docs.softwareheritage.org/devel/swh-model/persistent-identifiers.html][(full spec)]] :noexport: + #+INCLUDE: "../../common/modules/swhid.org::#oneslide" :only-contents t + for *20+ billions* software artifacts! +** Meet the SWHID intrinsic identifiers + #+INCLUDE: "../../common/modules/swh-ardc.org::#swh-r" :only-contents t :minlevel 3 +* Revolutionary infrastructure, scientific challenges +** Summing up: a revolutionary infrastructure /designed for source code/ :B_picblock: +#+latex:\vspace{-0.2em} +#+BEGIN_EXPORT latex + \begin{center} + \includegraphics[width=.4\linewidth]{SWH-logo.pdf} + { \url{www.softwareheritage.org}} + \end{center} +#+END_EXPORT +#+latex:\vspace{-0.4em} +*** /global/ source code /archive/ \hfill /Library of Alexandria of source code/ + :PROPERTIES: + :BEAMER_env: picblock + :BEAMER_OPT: pic=clock-spring-forward.png,width=.15\linewidth,leftpic=true + :END: + + harvest /all/ software source code + + /on demand harvesting/ and /curated deposit/ +#+latex:\vspace{-0.4em} +*** /universal/ intrinsic identifiers + \mbox{}\hfill SWHID standard is independent of version control systems +#+latex:\vspace{-0.4em} +*** /uniform/ data model, /full graph/ of development history + \mbox{}\hfill enables large scale, big code research +#+latex:\vspace{-0.4em} +*** /infrastructure/ for Open Science + \mbox{} \hfill /base layer/ for software source code in the /Open Science architecture/ + +** A revolutionary infrastructure /designed for software source code/ +#+INCLUDE: "../../common/modules/swh-as-infrastructure.org::#oneslide" :only-contents t :minlevel 3 +** A challenging scientific and technical undertaking +*** A novel, large infrastructure + - object storage [[https://www.softwareheritage.org/2021/03/11/towards-a-next-generation-object-storage-for-software-heritage/][with peculiar workload]] + - gigantic Merkle graph + - counting tens of billions of objects ([[https://www.softwareheritage.org/2021/05/11/next-generation-counters/][reuse P. Flajolet's seminal work]]) + - and much more: see [[https://www.softwareheritage.org/2021/04/08/swh-2021-technical-roadmap/][the 2021 technical roadmap]] +#+BEAMER: \pause +*** First datasets are available for Big Code analysis + - full graph of software development (~20Bn nodes, ~200Bn edges) + see Pietri, Spinellis, Zacchiroli, MSR 2019 https://dx.doi.org/10.1109/MSR.2019.00030 + - MSR 2020 mining competition + see https://2020.msrconf.org/track/msr-2020-mining-challenge#Call-for-Papers +* All the source code +** All the source code! + #+BEAMER: \begin{center}\includegraphics[width=\extblockscale{\linewidth}]{swh-collect-axes}\end{center} +** All the source: strategies + #+BEAMER: \begin{center}\includegraphics[width=\extblockscale{\linewidth}]{swh-collect-strategies}\end{center} +* Milestones, policy +** Milestones :B_block: + #+INCLUDE: "../../common/modules/swh-key-dates.org::#keydates" :minlevel 3 :only-contents t +** Policy highlight: the EU Copyright reform\hfill adopted March 28 2019 +*** "Upload filters": a threat to /all modern software development/ + - developing platforms (GitHub, GitLab, Bitbucket, etc.) + - *distribution platforms (Maven, Pypi, CRAN, CTAN, etc.)* + - *archives (Software Heritage)* +#+BEAMER: \pause +*** We got an exclusion for + \hfill /\sout{non for profit} open source software developing *and sharing* platforms/ +#+BEAMER: \pause +*** Key role of Software Heritage + \hfill policy-maker awareness, essential insights for NGOs, government contacts +* SWHIDs by the example :noexport: +** A word on the trust model for systems of identifiers + \vspace{-5pt} +*** Two general classes of systems of identifiers + - intrinsic :: /computed/ from the object /(no registry required, fully decentralised)/\\ + /(e.g.: chemical notation, music notation, hashes, SWHIDs)/\pause + - extrinsic :: /assigned/ by an authority /(need a registry)/\\ + /(e.g.: passport number, DOI, ARK, RRID, etc.)/\pause + \mbox{}\hfill See [[https://www.softwareheritage.org/2020/07/09/intrinsic-vs-extrinsic-identifiers/][the dedicated blog post]] for more details +#+BEAMER: \pause +*** Trust model, extrinsic (e.g. DOIs) :B_block: + :PROPERTIES: + :BEAMER_COL: .5 + :BEAMER_env: block + :END: +#+ATTR_LATEX: :width \linewidth +file:doi-vs-pid-1.pdf +#+BEAMER: \pause +*** Trust model, intrinsic (e.g. SWHIDs) :B_block: + :PROPERTIES: + :BEAMER_env: block + :BEAMER_COL: .45 + :END: +#+ATTR_LATEX: :width .8\linewidth +file:doi-vs-pid-3.pdf +*** Trust model for DOIs with checksums :B_block:noexport: + :PROPERTIES: + :BEAMER_COL: .5 + :BEAMER_env: block + :END: +#+ATTR_LATEX: :width \linewidth +file:doi-vs-pid-2.pdf +*** :B_ignoreheading:noexport: + :PROPERTIES: + :BEAMER_env: ignoreheading + :END: +** A worked example + #+LATEX: \centering\forcebeamerstart + #+LATEX: \only<1>{\colorbox{white}{\includegraphics[width=\extblockscale{\linewidth}]{git-merkle/merkle_1.pdf}}} + #+LATEX: \only<2>{\colorbox{white}{\includegraphics[width=\extblockscale{\linewidth}]{git-merkle/contents.pdf}}} + #+LATEX: \only<3>{\colorbox{white}{\includegraphics[width=\extblockscale{\linewidth}]{git-merkle/merkle_2_contents.pdf}}} + #+LATEX: \only<4>{\colorbox{white}{\includegraphics[width=\extblockscale{\linewidth}]{git-merkle/directories.pdf}}} + #+LATEX: \only<5>{\colorbox{white}{\includegraphics[width=\extblockscale{\linewidth}]{git-merkle/merkle_3_directories.pdf}}} + #+LATEX: \only<6>{\colorbox{white}{\includegraphics[width=\extblockscale{\linewidth}]{git-merkle/revisions.pdf}}} + #+LATEX: \only<7>{\colorbox{white}{\includegraphics[width=\extblockscale{\linewidth}]{git-merkle/merkle_4_revisions.pdf}}} + #+LATEX: \only<8>{\colorbox{white}{\includegraphics[width=\extblockscale{\linewidth}]{git-merkle/releases.pdf}}} + #+LATEX: \only<9>{\colorbox{white}{\includegraphics[width=\extblockscale{\linewidth}]{git-merkle/merkle_5_releases.pdf}}} + #+LATEX: \only<10>{\colorbox{white}{\includegraphics[width=\extblockscale{\linewidth}]{git-merkle/snapshots.pdf}}} + #+LATEX: \forcebeamerend +* Big code :noexport: +** Software Heritage for Research and Innovation +*** Reference platform for /Big Code/ :B_picblock: + :PROPERTIES: + :BEAMER_opt: pic=universal, leftpic=true, width=.2\linewidth + :BEAMER_env: picblock + :BEAMER_act: + :END: + - unique *observatory* of all software development + - *big data, machine learning* paradise: classification, trends, coding patterns, code completion... +#+BEAMER: \pause +*** First datasets are available! + - full graph of software development (~20Bn nodes, ~200Bn edges) + see Pietri, Spinellis, Zacchiroli, MSR 2019 https://dx.doi.org/10.1109/MSR.2019.00030 + - MSR 2020 mining competition + see https://2020.msrconf.org/track/msr-2020-mining-challenge#Call-for-Papers + +* Public code, mirrors :B_block: +** News : archiving /public/ code + #+latex: \begin{center} + #+ATTR_LATEX: :width 0.7\linewidth + file:codeetalab.png + #+latex: \end{center} +#+BEAMER: \pause + https://code.etalab.gouv.fr +** News : ENEA mirror +*** Thomas Jefferson, February 18, 1791 :B_block: + :PROPERTIES: + :BEAMER_ACT: + :BEAMER_env: block + :END: +#+latex: {\em + ...let us save what remains: not by vaults and locks which fence them + from the public eye and use in consigning them to the waste of time, + but by such a multiplication of copies, as shall place them beyond + the reach of accident. +#+latex: } + #+BEAMER: \pause +*** Welcoming ENEA :B_block: + :PROPERTIES: + :BEAMER_env: picblock + :BEAMER_OPT: pic=LogoENEAcompletoENG.png, leftpic=true, width=.7\linewidth + :END: + - first *institutional* mirror + - increased resilience + - *AI infrastructure* for researchers + - stepping stone to \endgraf + \hfill an European joint effort + +** Calling for preservation: Donald Knuth and Len Shustek +*** Communications of the ACM, February 2021 :B_picblock: + :PROPERTIES: + :BEAMER_env: picblock + :BEAMER_OPT: pic=KnuthHistory.jpg, leftpic=true, width=.3\textwidth + :END: + /"Telling historical stories is the best way to teach. It's much easier to understand something if you know the threads it is connected to."/ + \mbox{}\\ + \mbox{}\\ + \mbox{}\hfill /Let's Not Dumb Down the History of Computer Science/\\ + \mbox{}\hfill Donald E. Knuth, Len Shustek\\ + \mbox{}\hfill https://doi.org/10.1145/3442377 +#+BEAMER: \pause +*** A unique opportunity + most of the creators are still here: we can talk to them!\\ + \hfill but the clock is ticking... +# - Software Heritage provides a key infrastructure for software historians +** Source code history for Security and Transparency +#+LATEX: \vspace{-.5em} +*** Where does reused software come from? :B_block: + :PROPERTIES: + :BEAMER_env: block + :BEAMER_COL: .5 + :END: +#+BEGIN_EXPORT latex +\begin{center} +\includegraphics[width=.7\linewidth]{myriadsources} +\end{center} +#+END_EXPORT +#+BEAMER: \pause +*** Do /you/ know where it comes from? :B_block: + :PROPERTIES: + :BEAMER_env: block + :BEAMER_COL: .4 + :END: + - the software you ship + - the software you use + - the software you acquire + - the software that + + has that bug + + has that vulnerability +*** :B_ignoreheading: + :PROPERTIES: + :BEAMER_env: ignoreheading + :END: +#+BEAMER: \pause +*** KYSW: Know Your SoftWare :B_picblock: + :PROPERTIES: + :BEAMER_env: picblock + :BEAMER_OPT: pic=executiveorder.jpg,width=.4\linewidth,leftpic=true + :END: + Like KYC in banking, KYSW is now essential all over IT...\\ + \mbox{}\\ + *Sec. 4. Enhancing Software Supply Chain Security* \\ + \hfill /ensuring and attesting, to the extent practicable, to the integrity and provenance of open source software/\\ + \mbox{}\hfill [[https://www.whitehouse.gov/briefing-room/presidential-actions/2021/05/12/executive-order-on-improving-the-nations-cybersecurity/][May 2021 POTUS Executive Order]] + + + diff --git a/talks-public/2022-05-31-HalPartners/Makefile b/talks-public/2022-05-31-HalPartners/Makefile new file mode 100644 index 0000000..68fbee7 --- /dev/null +++ b/talks-public/2022-05-31-HalPartners/Makefile @@ -0,0 +1 @@ +include ../Makefile.slides