diff --git a/common/modules/swh-functional-architecture.org b/common/modules/swh-functional-architecture.org new file mode 100644 index 0000000..7cd1e83 --- /dev/null +++ b/common/modules/swh-functional-architecture.org @@ -0,0 +1,52 @@ +#+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 +* The high level architecture +** Archiving all the source code is a complex task +#+latex: \begin{center} +#+ATTR_LATEX: :width \extblockscale{\textwidth} +file:SWH-as-foundation-block.png +#+latex: \end{center} +#+BEAMER: \pause +*** Collect :B_exampleblock: + :PROPERTIES: + :BEAMER_env: exampleblock + :BEAMER_COL: .3 + :END: + - discover + + sources + - harvest + + protocols + - ingest + + VCS + + data models +*** Organise and Preserve :B_block: + :PROPERTIES: + :BEAMER_env: block + :BEAMER_COL: .4 + :END: + - enrich + + metadata + - analyze + + traits + - replicate + + locations + + technologies + + stakeholders +*** Share :B_block: + :PROPERTIES: + :BEAMER_env: block + :BEAMER_COL: .3 + :END: + - download + - browse + + wayback machine + - search + + facets + - watch + + trends +#+BEAMER: \pause +**** + \hfill there are many opportunities to help! diff --git a/talks-public/2017-02-04-FOSDEM/2017-02-04-FOSDEM.org b/talks-public/2017-02-04-FOSDEM/2017-02-04-FOSDEM.org index 756a069..8ec2aa9 100644 --- a/talks-public/2017-02-04-FOSDEM/2017-02-04-FOSDEM.org +++ b/talks-public/2017-02-04-FOSDEM/2017-02-04-FOSDEM.org @@ -1,214 +1,167 @@ #+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: Preserving the Free Software Commons #+AUTHOR: Roberto Di Cosmo and Stefano Zacchiroli #+DATE: 4 February 2017 #+DESCRIPTION: Preserving the Free Software Commons #+KEYWORDS: software heritage legacy preservation knowledge mankind technology #+BEAMER_HEADER: \date[FOSDEM'17]{4 February 2017\\ FOSDEM'17\\ Brussels, Belgium} #+BEAMER_HEADER: \author[R. Di Cosmo, S. Zacchiroli]{Roberto Di Cosmo and Stefano Zacchiroli} # # 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.org" :minlevel 1 #+BEAMER_HEADER: \institute[Irill/INRIA/UPD]{\url{roberto@dicosmo.org, zack@upsilon.cc}} # #+LATEX_HEADER: \usepackage{enumitem} # # Part I: vision # * Software, Source Code, and the Software Commons ** Free Software is everywhere :PROPERTIES: :CUSTOM_ID: softwareispervasive :END: #+latex: \begin{center} #+ATTR_LATEX: :width .9\linewidth file:software-center.pdf #+latex: \end{center} # # Source code # #+INCLUDE: "../../common/modules/source-code-different-short.org::#softwareisdifferent" :minlevel 2 ** Our Software Commons #+INCLUDE: "../../common/modules/foss-commons.org::#commonsdef" :only-contents t #+BEAMER: \pause *** Source code is /a precious part/ of our commons \hfill we need to take care of it! # # Negative presentation (what we are missing) # # *** Our source code is /precious knowledge/ # \hfill are we taking care of it? # #+INCLUDE: "../../common/modules/swh-motivations.org::#main" :only-contents t :minlevel 2 # # The project # #+INCLUDE: "../../common/modules/swh-overview-sourcecode.org::#mission" :minlevel 2 # # Positive presentation (what we are building) # #+INCLUDE: "../../common/modules/swh-goals.org::#exhaustive" :minlevel 2 #+INCLUDE: "../../common/modules/swh-goals.org::#longterm" :minlevel 2 ** Our principles #+latex: \begin{center} #+ATTR_LATEX: :width .9\linewidth file:SWH-as-foundation-slim.png #+latex: \end{center} *** Open approach :B_block:BMCOL: :PROPERTIES: :BEAMER_col: 0.4 :BEAMER_env: block :END: - 100% FOSS - transparency *** In for the long haul :B_block:BMCOL: :PROPERTIES: :BEAMER_col: 0.4 :BEAMER_env: block :END: - replication - non profit ** Archiving goals Targets: VCS repositories & source code releases (e.g., tarballs) *** We DO archive - file *content* (= blobs) - *revisions* (= commits), with full metadata - *releases* (= tags), ditto - where (*origin*) & when (*visit*) we found any of the above # - time-indexed repo *snapshots* (i.e., we never delete anything) … in a VCS-/archive-agnostic *canonical data model* *** We DON'T archive (UNIX philosophy) # - diffs → derived data from related contents - homepages, wikis - BTS/issues/code reviews/etc. - mailing lists Long term vision: play our part in a /"semantic wikipedia of software"/ # # Part II: roadmap # * Where we are today: technical overview #+INCLUDE: "../../common/modules/status-extended.org::#architecture" :only-contents t #+INCLUDE: "../../common/modules/status-extended.org::#merkletree" :minlevel 2 #+INCLUDE: "../../common/modules/status-extended.org::#merklerevision" :only-contents t #+INCLUDE: "../../common/modules/status-extended.org::#giantdag" :only-contents t #+INCLUDE: "../../common/modules/status-extended.org::#archive" :minlevel 2 #+INCLUDE: "../../common/modules/status-extended.org::#api" :only-contents t #+INCLUDE: "../../common/modules/status-extended.org::#features" :minlevel 2 # # Part III: # * Come in, we're open! ** You can help! *** Coding TO DO #+BEAMER: \vfill *** Join us - \url{www.softwareheritage.org/jobs} --- *job openings* - \url{wiki.softwareheritage.org} --- *internships* -** There is a whole lot to do! :noexport: -#+latex: \begin{center} -#+ATTR_LATEX: :width \extblockscale{\textwidth} -file:SWH-as-foundation-block.png -#+latex: \end{center} -#+BEAMER: \pause -*** Collect :B_exampleblock: - :PROPERTIES: - :BEAMER_env: exampleblock - :BEAMER_COL: .3 - :END: - - discover - + sources - - harvest - + protocols - - ingest - + VCS - + data models -*** Organise and Preserve :B_block: - :PROPERTIES: - :BEAMER_env: block - :BEAMER_COL: .4 - :END: - - enrich - + metadata - - analyze - + traits - - replicate - + locations - + technologies - + stakeholders -*** Share :B_block: - :PROPERTIES: - :BEAMER_env: block - :BEAMER_COL: .3 - :END: - - download - - browse - + wayback machine - - search - + facets - - watch - + trends -#+BEAMER: \pause -*** - \hfill we need *your* help! - ** The Software Heritage community *** A small, but dedicated core team :B_picblock: :PROPERTIES: :BEAMER_env: picblock :BEAMER_opt: pic=team,width=.4\linewidth :END: *** Inria as initiator :B_picblock: :PROPERTIES: :BEAMER_env: picblock :BEAMER_opt: pic=inria-logo-new,leftpic=true,width=\extblockscale{.4\linewidth} :END: - .fr national CS research institution - strong FOSS culture, W3C founding partner # - creating a non profit, international organisation *** Supporters and /first partners/ *Société Générale, Microsoft, Huawei, Nokia Bell Labs, DANS,* ACM, Adullact, Creative Commons, Eclipse, Free Software Foundation, Open Source Initiative, GitHub, IEEE, OIN, OW2, Software Freedom Conservancy, SFLC, The Document Foundation, ... * Conclusion ** Conclusion *** Software Heritage is - a /reference archive/ of /all/ FOSS ever written # - a fantastic new tool for /research/ software - a unique /complement/ for /development platforms/ - an international, open, nonprofit, /mutualized infrastructure/ - at the service of our community, at the service of society *** Come in, we're open! \url{www.softwareheritage.org} --- /sponsoring/, /*job openings*/ \\ \url{wiki.softwareheritage.org} --- /*internships*/, /leads/ \\ \url{forge.softwareheritage.org} --- /*our own code*/ #+BEAMER: \vfill \flushright {\Huge Questions?} \vfill * FAQ :B_appendix: :PROPERTIES: :BEAMER_env: appendix :END: ** Q: how about SHA1 collisions? #+BEAMER: \lstinputlisting[language=SQL,basicstyle=\small]{../../common/source/swh-content.sql} ** Q: do you archive /only/ Free Software? - We only crawl origins /meant/ to host source code (e.g., forges) - Most (~90%) of what we /actually/ retrieve is textual content #+BEAMER: \vfill - Our goal: archive /the entire Free Software commons/ #+BEAMER: \vfill - Large parts of what we retrieve is /already/ Free Software, today - Most of the rest /will become/ Free Software in the long term - e.g., at copyright expiration