diff --git a/talks-public/2018-11-29-frankfurt-library/2018-11-29-frankfurt-library.org b/talks-public/2018-11-29-frankfurt-library/2018-11-29-frankfurt-library.org index 055c886..8840c0d 100644 --- a/talks-public/2018-11-29-frankfurt-library/2018-11-29-frankfurt-library.org +++ b/talks-public/2018-11-29-frankfurt-library/2018-11-29-frankfurt-library.org @@ -1,240 +1,261 @@ #+COLUMNS: %40ITEM %10BEAMER_env(Env) %9BEAMER_envargs(Env Args) %10BEAMER_act(Act) %4BEAMER_col(Col) %10BEAMER_extra(Extra) %8BEAMER_opt(Opt) #+TITLE: Our Software Heritage #+SUBTITLE: Goal and Enabler for Digital Preservation #+BEAMER_HEADER: \date[29/11/2018, DNB]{29 November 2018\\Digital cultural heritage preservation\\Deutsche Nationalbibliothek --- Frankfurt, Germany} #+DATE: 29 November 2018 #+INCLUDE: "../../common/modules/prelude.org" :minlevel 1 #+INCLUDE: "../../common/modules/169.org" -#+BEAMER_HEADER: \institute[Software Heritage]{Software Heritage --- {\tt zack@upsilon.cc, @zacchiro}} +#+BEAMER_HEADER: \institute[Software Heritage]{\\[-5mm]Software Heritage --- {\tt zack@upsilon.cc, @zacchiro}} #+BEAMER_HEADER: \author{Stefano Zacchiroli} * Software is everywhere around us ** Software is everywhere :PROPERTIES: :CUSTOM_ID: softwareispervasive :END: #+latex: \begin{center} #+ATTR_LATEX: :width .5\linewidth file:software-center.pdf #+latex: \end{center} #+BEGIN_EXPORT latex \note{If we look around us, we see software everywhere.\\[1em] It powers our industries, fuels innovation, mediates access to all digital information, and is a pillar of modern scientific research.\\[1em] % %Our industry, our society, our own lives depend on software!\\[1em] Software in general, and Free and Open Source software in particular, is at the heart of our society.\\[1em] The Source code of this software embodies our collective knowledge, and is a growing part of our cultural heritage.\\ %Now the question is: are we taking care of it? } #+END_EXPORT #+BEAMER: \pause *** Software embodies a growing part of... \hfill ... our *scientific*, *technical*, and *cultural* heritage ** Source code: executable and human readable knowledge #+INCLUDE: "../../common/modules/source-code-different-short.org::#thesourcecode" :only-contents t :minlevel 3 ** Source code: enabler for all digital preservation *** Castagné, M. (2013). /Consider the source: The value of source code to digital preservation strategies./ SLIS Student Research Journal, 2(2) #+BEAMER: \pause *** - software *mediates* our access to all sorts of data --- music, photos, games, etc. - *software rot* destroys our ability to access such data - state-of-the-art mitigation techniques: *emulation*, *open standards* #+BEAMER: \pause *** - software source code preservation is the end game, *our last resort* if/when everything else fails - use cases: - _rebuilding_ software from source - extracting knowledge for _clean slate implementation_ ** ~ 50 years, a lightning fast growth - #+INCLUDE: "../../common/modules/50years-source-code.org::#apollolinux" :only-contents t :minlevel 3 -** We are at a turning point in the history of software :noexport: -*** Harold Abelson, Structure and Interpretation of Computer Programs \hfill (1985) - /“Programs must be written for people to read, and only incidentally for - machines to execute.”/ -*** Len Shustek, Computer History Museum \hfill (2006) - \hfill /“Source code provides a view into the mind of the designer.”/ - #+BEAMER: \pause -*** Preserve the past - \hfill Only a few years left to recover the history of software technology - #+BEAMER: \pause -*** Improve the future - We need a *universal platform* for the archival of past, present, and - future software source code +*** Apollo 11 Guidance Computer (~60.000 lines), 1969 :B_picblock: + :PROPERTIES: + :BEAMER_opt: pic=Margaret_Hamilton, width=.2\linewidth, leftpic=true + :BEAMER_env: picblock + :BEAMER_act: + :END: + "When I first got into it, nobody knew what it was that we were doing. It was like the Wild West."\\ + \mbox{}\hfill Margaret Hamilton\\ + #+BEAMER: \pause +*** Linux Kernel :B_picblock: + :PROPERTIES: + :BEAMER_opt: pic=Linuxlinecount, width=.4\linewidth, leftpic=true + :BEAMER_env: picblock + :BEAMER_act: + :END: + \hfil ... now in your pockets!\hfill\mbox{}\\ + #+BEAMER: \pause +*** + :PROPERTIES: + :BEAMER_env: ignoreheading + :END: + We are now at a turning point in the history of software technology: are we + taking care of all this? #+INCLUDE: "../../common/modules/swh-motivations-foss.org::#main" :only-contents t :minlevel 2 + * The Software Heritage initiative #+INCLUDE: "../../common/modules/swh-overview-sourcecode.org::#mission" :minlevel 2 #+INCLUDE: "../../common/modules/status-extended.org::#archivinggoals" :minlevel 2 #+INCLUDE: "../../common/modules/status-extended.org::#architecture" :minlevel 2 :only-contents t #+INCLUDE: "../../common/modules/status-extended.org::#archive" :minlevel 2 ** Demo: the Apollo 11 source code *** Margaret Hamilton :PROPERTIES: :BEAMER_env: block :BEAMER_COL: .25 :END: file:Margaret_Hamilton.jpg *** The Apollo 11 source code in SWH :PROPERTIES: :BEAMER_env: block :BEAMER_COL: .50 :END: file:swh-apollo11.png *** :B_ignoreheading: :PROPERTIES: :BEAMER_env: ignoreheading :END: *** Links # Source code entry point - [[https://archive.softwareheritage.org/swh:1:dir:3c235a1a8223727a964c154eb8f2273176c48c88;origin=https://github.com/chrislgarry/Apollo-11/][Entry point]] - [[https://archive.softwareheritage.org/swh:1:cnt:41ddb23118f92d7218099a5e7a990cf58f1d07fa;origin=https://github.com/chrislgarry/Apollo-11;lines=53-87/][Burn, baby, burn!]] ** Demo: the Quake 3 source code *** John Carmack :PROPERTIES: :BEAMER_env: block :BEAMER_COL: .42 :END: #+ATTR_LATEX: :width .7\linewidth file:John_Carmack_GDC_2010.jpg *** The Quake 3 source code in SWH :PROPERTIES: :BEAMER_env: block :BEAMER_COL: .52 :END: file:swh-quake3.png *** :B_ignoreheading: :PROPERTIES: :BEAMER_env: ignoreheading :END: *** Links # Source code entry point - [[https://archive.softwareheritage.org/swh:1:dir:c6f07c2173a458d098de45d4c459a8f1916d900f;origin=https://github.com/id-Software/Quake-III-Arena/][Entry point]] - [[https://archive.softwareheritage.org/swh:1:cnt:bb0faf6919fc60636b2696f32ec9b3c2adb247fe;origin=https://github.com/id-Software/Quake-III-Arena;lines=552-572/][What the f...]] +** API + :PROPERTIES: + :BEAMER_env: ignoreheading + :END: + #+INCLUDE: "../../common/modules/status-extended.org::#apiintro" :minlevel 2 +** Vault + :PROPERTIES: + :BEAMER_env: ignoreheading + :END: + #+INCLUDE: "../../common/modules/vault.org::#overview" :minlevel 2 ** Other highlights *** Over /10 billions intrinsic/ identifiers (IDOs) for scientific reproducibility See our conceptual framework for DIOs and IDOs \hfill \url{bit.ly/swhpidpaper} #+BEAMER: \pause *** Research software deposit :B_block: :PROPERTIES: :BEAMER_env: block :BEAMER_COL: .45 :END: - moderated via HAL\\ \hfill /open since September 2018/ #+BEAMER: \pause *** Compliance deposit :B_block: :PROPERTIES: :BEAMER_env: block :BEAMER_COL: .55 :END: Complete & Corresponding Source code (CCS) deposit for copyleft software shipped in IT products by hardware/software vendors\\ \hfill /upcoming/ *** :B_ignoreheading: :PROPERTIES: :BEAMER_env: ignoreheading :END: #+BEAMER: \pause *** Reference archive :B_block: :PROPERTIES: :BEAMER_env: block :BEAMER_COL: .4 :END: See for example\\ \hfill /swmath.org/ #+BEAMER: \pause *** Collaboration hub :B_block: :PROPERTIES: :BEAMER_env: block :BEAMER_COL: .4 :END: - industry, research - digital preservation #+BEAMER: \pause *** \hfill Now part of the French National Plan for Open Science ** Reduce risk, avoid fragmentation #+latex: \begin{center} #+ATTR_LATEX: :width 0.7\linewidth file:SWH-as-foundation-slim.png #+latex: \end{center} #+BEAMER: \pause *** Thomas Jefferson, February 18, 1791 :B_block: :PROPERTIES: :BEAMER_ACT: :BEAMER_env: block :BEAMER_COL: .55 :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 *** A /common/ infrastructure :B_block: :PROPERTIES: :BEAMER_env: block :BEAMER_COL: .45 :END: - mutualisation for sustainability - open source, non for profit - mirror network open to all - *may* prevent a useless diaspora * Conclusion ** Working with UNESCO *** Inria Unesco agreement, April 3rd, 2017 :B_block: :PROPERTIES: :BEAMER_env: block :BEAMER_COL: .5 :END: #+BEGIN_EXPORT latex \includegraphics[width=\extblockscale{.85\linewidth}]{inria-logo-new}\hfill \includegraphics[width=\extblockscale{.5\linewidth}]{unesco}\\[2.8em] \includegraphics[width=\extblockscale{1.4\linewidth}]{unesco-accord}\\ #+END_EXPORT *** Unesco Inria expert group, November 2018 :B_block: :PROPERTIES: :BEAMER_env: block :BEAMER_COL: .5 :END: #+BEGIN_EXPORT latex \hfill \includegraphics[width=\extblockscale{1.4\linewidth}]{UnescoParisCall} \hfill #+END_EXPORT ** Come in, we're open! #+BEGIN_EXPORT latex \begin{center} \includegraphics[width=.6\linewidth]{SWH-logo.pdf} \end{center} \begin{center} {\large \url{www.softwareheritage.org} \hspace{4em} \url{@swheritage}} \end{center} #+END_EXPORT #+LATEX: {\begin{center}\Large Everybody is concerned, everybody can help build\end{center}} *** The great library of source code :B_picblock: :PROPERTIES: :BEAMER_env: picblock :BEAMER_COL: 0.5 :BEAMER_OPT: pic=clock-spring-forward.png,width=.45\linewidth,leftpic=true :END: - - recover the past + - preserve the past - structure the future * Appendix :B_appendix: :PROPERTIES: :BEAMER_env: appendix :END: ** Data model :PROPERTIES: :BEAMER_env: ignoreheading :END: #+INCLUDE: "../../common/modules/status-extended.org::#dagdetail" :minlevel 2 :only-contents t ** All the source code #+BEAMER: \begin{center}\includegraphics[width=\extblockscale{\linewidth}]{swh-collect-axes}\end{center} ** All the source code: strategy #+BEAMER: \begin{center}\includegraphics[width=\extblockscale{\linewidth}]{swh-collect-strategies}\end{center} +