SlideShare une entreprise Scribd logo
1  sur  21
Télécharger pour lire hors ligne
Preserving Software
Challenges and Opportunities
for Reproducibility of Science and Technology
Roberto Di Cosmo
Scilabtec 2015 - Paris
Irill - INRIA - University Paris Diderot
roberto@dicosmo.org
21st of May 2015
Roberto Di Cosmo Preserving Software for Reproductibility 1/26
How we built our scientific knowledge
The experimental method
make an observation
formulate an hypothesis
set up an experiment
formulate a theory
And then we reproduce and verify.
Reproducibility is the key
non-reproducible single occurrences are of
no significance to science
Karl Popper, The Logic of Scientific Discovery, 1934
Roberto Di Cosmo Preserving Software for Reproductibility 3/26
Reproducibility, today
Reproducibility (Wikipedia)
the ability of an entire experiment or study to be reproduced,
either by the researcher or by someone else working independently.
It is one of the main principles of the scientific method.
Why we want it
foundation of the scientific method
accelerator of research: allows to build upon previous work
visibility reproducible results are cited more often
Piwowar et al. Sharing Detailed Research Data Is Associated with
Increased Citation Rate. PLoS ONE 2(3): e308, 2007
transparency of results eases acceptance
necessary for industrial transfer
reproducibility is the essence of industry!
Roberto Di Cosmo Preserving Software for Reproductibility 4/26
Today: Software is Science’s cornerstone
Software is an essential component of modern scientific research
Deep knowledge from all fields is embodied in complex software
systems
Top 100 papers (Nature, October 2014)
[...] the vast majority describe experimen-
tal methods or software that have become
essential in their fields.
http: // www. nature. com/ news/
the-top-100-papers-1. 16224
Software is the pillar of science
Roberto Di Cosmo Preserving Software for Reproductibility 6/26
Software is Pervasive
At the heart of technology
televisions/fridges ≈ 10M SLOC
phones ≈ 20M SLOC
cars ≈ 100M SLOC
IoT ...
Key mediator for accessing all information (c) Banski
Information is a main pillar of our modern societies.
Absent an ability to correctly interpret dig-
ital information, we are left with [...] “rot-
ting bits” [...] of no value.
Vinton G. Cerf IEEE 2011
Software is an essential enabler for all technology
Roberto Di Cosmo Preserving Software for Reproductibility 7/26
Reproducibility in the digital age
For an experiment involving software, we need
open access to the scientific article describing it
open data sets used in the experiment
source code of all the components
environment of execution
stable references between all this
The first two items are already widely acknowledged
open access Berlin declaration, 2003
http://openaccess.mpg.de
open data sets Declaration on open access to scientific data,
OECD, 2004 http://bit.ly/1lGubJQ
What about the code?
Roberto Di Cosmo Preserving Software for Reproductibility 8/26
Why Open Source?
Having access to (all) the source of (all) the code used in an
experiment is important:
even the simplest experiments depend on a wealth of
components and configuration options
source code is like the proof used in a theorem: Fermat
statements like “the details are omitted due to lack of space”
access to all the source code is not just necessary to
reproduce, it is also useful to evolve and modify, to build new
experiments from the old ones
For science, and industry ...
Free and Open Source Software is the best choice!
Roberto Di Cosmo Preserving Software for Reproductibility 9/26
Software and reproducibility
A fundamental question
How are we doing, regarding reproducibility, in Software?
The case of Computer Systems Research
A field with Computer experts ... we have high expectations!
Christian Collberg set out to check them.
Measuring Reproducibility in Computer Systems Research
Long and detailed technical report, March 2014
http://reproducibility.cs.arizona.edu/v1/tr.pdf
Roberto Di Cosmo Preserving Software for Reproductibility 11/26
Collberg’s report from the trenches
Analysis of 613 papers
8 ACM conferences: ASPLOS’12,
CCS’12, OOPSLA’12, OSDI’12,
PLDI’12, SIGMOD’12, SOSP’11,
VLDB’12
5 journals: TACO’9, TISSEC’15,
TOCS’30, TODS’37, TOPLAS’34
all very practical oriented
The basic question
can we get the code to build and run?
The workflow
Roberto Di Cosmo Preserving Software for Reproductibility 12/26
The result
That’s a whopping 81% of non reproducible works!
Roberto Di Cosmo Preserving Software for Reproductibility 13/26
The reasons (or, “the dog ate my program”)
Many issues, nice anectotes, and it finally boils down to
Availability
Traceability
Environment
Automation
Documentation
Understanding (Open Source)
The first two are actually important software preservation issues:
yes, code can be destroyed, and we can loose trace of it!
Roberto Di Cosmo Preserving Software for Reproductibility 14/26
Like all digital information, software is fragile
An example is worth a thousand words...
Roberto Di Cosmo Preserving Software for Reproductibility 16/26
Inconsiderate or malicious loss of code
The Year 2000 Bug ... uncovered an inconvenient truth
in 1999, an estimated 40% of companies had either
lost, or thrown away the original source code for their
systems!
CodeSpaces: source code hosting, 2007-2014
Yes, for seven years all seemed ok.
No, they did not recover the data.
Roberto Di Cosmo Preserving Software for Reproductibility 17/26
Business-driven loss of code support: Google
Roberto Di Cosmo Preserving Software for Reproductibility 18/26
Business-driven loss of code support: Google, cont’d.
Roberto Di Cosmo Preserving Software for Reproductibility 19/26
Disruption of the web of reference
Web links are not permanent (even permalinks)
there is no general guarantee that a URL which at
one time points to a given object continues to do so
T. Berners-Lee et al. RFC 1738.
URLs used in articles decay!
Analysis of IEEE Computer (Computer), and the Communications
of the ACM (CACM): 1995-1999
the half-life of a referenced URL is approximately 4 years
from its publication date
D. Spinellis. The Decay and Failures of URL References.
Communications of the ACM, 46(1):71-77, January 2003.
Roberto Di Cosmo Preserving Software for Reproductibility 20/26
Preservation of digital information is on the rise
A wealth of initiatives around us
generalist the Web at archive.org; National Digital
Information Infrastructure and Preservation Program
(NDIIPP, USA); ...
culture books, music, video: INA (FR);
http://www.nationalarchives.gov.uk (UK) ...
social networks Twitter is archived by the Library of Congress!
libraries and scholarly work ArXiv; Digital Preservation Network
http://www.dpn.org/; ...
scientific data CINES (FR); Zenodo/OpenAire (CERN); ...
And yet, up to now...
software is largely ignored as an object of preservation...
computer scientists are absent from the preservation landscape!
It’s time to change all this!
Roberto Di Cosmo Preserving Software for Reproductibility 22/26
Software Preservation Challenges: it’s different!
Unlike for books or movies, there is a big difference between using
and understanding a piece of software.
Using software
Requires an executable, and access to the execution environment
Understanding software
Requires access to the source code:
The source code for a work means the preferred form
of the work for making modifications to it.
— GNU General Public Licence, version 2
For reproducibility, we need both!
Roberto Di Cosmo Preserving Software for Reproductibility 23/26
Software Preservation Challenges: it’s different!
Preserving software is more complex than archiving books or
scientific articles.
interdependencies a program relies on other software as well as
specific hardware components to be executed;
so does our understanding of its functionality
evolution software is a live object: its detailed history contains
key knowledge
To preserve software it is not enough to mimic processes that were
intended to archive books, scientific articles or data.
Roberto Di Cosmo Preserving Software for Reproductibility 24/26
The Knowledge Conservancy Magic Triangle
articles ArXiv, HAL, ...
data Zenodo, OpenAire, ...
software is the next to come, and is our mission
Roberto Di Cosmo Preserving Software for Reproductibility 25/26
Conclusions
Preservation is the foundation of all reproductibility efforts
We all must do our best to
preserve and make accessible scientific articles and data
preserve and make accessible the software
Because software embodies our scientific and technical knowledge
Conoscere `e saper fare.
Giambattista Vico, 1668–1744, Naples
Questions ?
Roberto Di Cosmo Preserving Software for Reproductibility 26/26

Contenu connexe

En vedette

ScilabTEC 2015 - Inria
ScilabTEC 2015 - InriaScilabTEC 2015 - Inria
ScilabTEC 2015 - InriaScilab
 
ScilabTEC 2015 - Inmetro
ScilabTEC 2015 - InmetroScilabTEC 2015 - Inmetro
ScilabTEC 2015 - InmetroScilab
 
ScilabTEC 2015 - Noesis Solutions
ScilabTEC 2015 - Noesis SolutionsScilabTEC 2015 - Noesis Solutions
ScilabTEC 2015 - Noesis SolutionsScilab
 
ScilabTEC 2015 - Xilinx
ScilabTEC 2015 - XilinxScilabTEC 2015 - Xilinx
ScilabTEC 2015 - XilinxScilab
 
ScilabTEC 2015 - J. Richalet
ScilabTEC 2015 - J. RichaletScilabTEC 2015 - J. Richalet
ScilabTEC 2015 - J. RichaletScilab
 
ScilabTEC 2015 - CEA/CESTA
ScilabTEC 2015 - CEA/CESTAScilabTEC 2015 - CEA/CESTA
ScilabTEC 2015 - CEA/CESTAScilab
 
ScilabTEC 2015 - TUM
ScilabTEC 2015 - TUMScilabTEC 2015 - TUM
ScilabTEC 2015 - TUMScilab
 
ScilabTEC 2015 - Bavarian Center for Agriculture
ScilabTEC 2015 - Bavarian Center for AgricultureScilabTEC 2015 - Bavarian Center for Agriculture
ScilabTEC 2015 - Bavarian Center for AgricultureScilab
 
ScilabTEC 2015 - KIT
ScilabTEC 2015 - KITScilabTEC 2015 - KIT
ScilabTEC 2015 - KITScilab
 
ScilabTEC 2015 - CNES
ScilabTEC 2015 - CNESScilabTEC 2015 - CNES
ScilabTEC 2015 - CNESScilab
 
Scilab/Xcos pour l'enseignement des sciences de l'ingénieur
Scilab/Xcos pour l'enseignement des sciences de l'ingénieurScilab/Xcos pour l'enseignement des sciences de l'ingénieur
Scilab/Xcos pour l'enseignement des sciences de l'ingénieurScilab
 

En vedette (11)

ScilabTEC 2015 - Inria
ScilabTEC 2015 - InriaScilabTEC 2015 - Inria
ScilabTEC 2015 - Inria
 
ScilabTEC 2015 - Inmetro
ScilabTEC 2015 - InmetroScilabTEC 2015 - Inmetro
ScilabTEC 2015 - Inmetro
 
ScilabTEC 2015 - Noesis Solutions
ScilabTEC 2015 - Noesis SolutionsScilabTEC 2015 - Noesis Solutions
ScilabTEC 2015 - Noesis Solutions
 
ScilabTEC 2015 - Xilinx
ScilabTEC 2015 - XilinxScilabTEC 2015 - Xilinx
ScilabTEC 2015 - Xilinx
 
ScilabTEC 2015 - J. Richalet
ScilabTEC 2015 - J. RichaletScilabTEC 2015 - J. Richalet
ScilabTEC 2015 - J. Richalet
 
ScilabTEC 2015 - CEA/CESTA
ScilabTEC 2015 - CEA/CESTAScilabTEC 2015 - CEA/CESTA
ScilabTEC 2015 - CEA/CESTA
 
ScilabTEC 2015 - TUM
ScilabTEC 2015 - TUMScilabTEC 2015 - TUM
ScilabTEC 2015 - TUM
 
ScilabTEC 2015 - Bavarian Center for Agriculture
ScilabTEC 2015 - Bavarian Center for AgricultureScilabTEC 2015 - Bavarian Center for Agriculture
ScilabTEC 2015 - Bavarian Center for Agriculture
 
ScilabTEC 2015 - KIT
ScilabTEC 2015 - KITScilabTEC 2015 - KIT
ScilabTEC 2015 - KIT
 
ScilabTEC 2015 - CNES
ScilabTEC 2015 - CNESScilabTEC 2015 - CNES
ScilabTEC 2015 - CNES
 
Scilab/Xcos pour l'enseignement des sciences de l'ingénieur
Scilab/Xcos pour l'enseignement des sciences de l'ingénieurScilab/Xcos pour l'enseignement des sciences de l'ingénieur
Scilab/Xcos pour l'enseignement des sciences de l'ingénieur
 

Similaire à ScilabTEC 2015 - Irill

La préservation des logiciels: défis et opportunités pour la reproductibilité...
La préservation des logiciels: défis et opportunités pour la reproductibilité...La préservation des logiciels: défis et opportunités pour la reproductibilité...
La préservation des logiciels: défis et opportunités pour la reproductibilité...Roberto Di Cosmo
 
#OSSPARIS17 - Logiciel libre pour une science reproductible, par ROBERTO DI C...
#OSSPARIS17 - Logiciel libre pour une science reproductible, par ROBERTO DI C...#OSSPARIS17 - Logiciel libre pour une science reproductible, par ROBERTO DI C...
#OSSPARIS17 - Logiciel libre pour une science reproductible, par ROBERTO DI C...Paris Open Source Summit
 
Observability für alle
Observability für alleObservability für alle
Observability für alleQAware GmbH
 
Achieving Impact with Open Source Software
Achieving Impact with Open Source SoftwareAchieving Impact with Open Source Software
Achieving Impact with Open Source SoftwareRoberto Di Cosmo
 
Cloud Operations and Analytics: Improving Distributed Systems Reliability usi...
Cloud Operations and Analytics: Improving Distributed Systems Reliability usi...Cloud Operations and Analytics: Improving Distributed Systems Reliability usi...
Cloud Operations and Analytics: Improving Distributed Systems Reliability usi...Jorge Cardoso
 
Introduction to Software Reverse Engineering
Introduction to Software Reverse EngineeringIntroduction to Software Reverse Engineering
Introduction to Software Reverse EngineeringTeodoro Cipresso
 
Open & reproducible research - What can we do in practice?
Open & reproducible research - What can we do in practice?Open & reproducible research - What can we do in practice?
Open & reproducible research - What can we do in practice?Felix Z. Hoffmann
 
Software Heritage, a revolutionary infrastructure for software source code, O...
Software Heritage, a revolutionary infrastructure for software source code, O...Software Heritage, a revolutionary infrastructure for software source code, O...
Software Heritage, a revolutionary infrastructure for software source code, O...OW2
 
Open Source Software Storyboard Ver9
Open Source Software Storyboard Ver9Open Source Software Storyboard Ver9
Open Source Software Storyboard Ver9Henry Briggs
 
An Overview Of The Singularity Project
An  Overview Of The  Singularity  ProjectAn  Overview Of The  Singularity  Project
An Overview Of The Singularity Projectalanocu
 
Using Docker Containers to Improve Reproducibility in Software and Web Engine...
Using Docker Containers to Improve Reproducibility in Software and Web Engine...Using Docker Containers to Improve Reproducibility in Software and Web Engine...
Using Docker Containers to Improve Reproducibility in Software and Web Engine...Vincenzo Ferme
 
Tsunami of Technologies. Are we prepared?
Tsunami of Technologies. Are we prepared?Tsunami of Technologies. Are we prepared?
Tsunami of Technologies. Are we prepared?msyukor
 
Codemotion Berlin 2015 recap
Codemotion Berlin 2015   recapCodemotion Berlin 2015   recap
Codemotion Berlin 2015 recapTorben Dohrn
 
Primers or Reminders? The Effects of Existing Review Comments on Code Review
Primers or Reminders? The Effects of Existing Review Comments on Code ReviewPrimers or Reminders? The Effects of Existing Review Comments on Code Review
Primers or Reminders? The Effects of Existing Review Comments on Code ReviewDelft University of Technology
 
Go open2010 sde_20100417
Go open2010 sde_20100417Go open2010 sde_20100417
Go open2010 sde_20100417Sandro D'Elia
 
International Journal of Engineering Research and Development
International Journal of Engineering Research and DevelopmentInternational Journal of Engineering Research and Development
International Journal of Engineering Research and DevelopmentIJERD Editor
 

Similaire à ScilabTEC 2015 - Irill (20)

La préservation des logiciels: défis et opportunités pour la reproductibilité...
La préservation des logiciels: défis et opportunités pour la reproductibilité...La préservation des logiciels: défis et opportunités pour la reproductibilité...
La préservation des logiciels: défis et opportunités pour la reproductibilité...
 
Reproducible Science and Deep Software Variability
Reproducible Science and Deep Software VariabilityReproducible Science and Deep Software Variability
Reproducible Science and Deep Software Variability
 
#OSSPARIS17 - Logiciel libre pour une science reproductible, par ROBERTO DI C...
#OSSPARIS17 - Logiciel libre pour une science reproductible, par ROBERTO DI C...#OSSPARIS17 - Logiciel libre pour une science reproductible, par ROBERTO DI C...
#OSSPARIS17 - Logiciel libre pour une science reproductible, par ROBERTO DI C...
 
Observability für alle
Observability für alleObservability für alle
Observability für alle
 
Achieving Impact with Open Source Software
Achieving Impact with Open Source SoftwareAchieving Impact with Open Source Software
Achieving Impact with Open Source Software
 
Cloud Operations and Analytics: Improving Distributed Systems Reliability usi...
Cloud Operations and Analytics: Improving Distributed Systems Reliability usi...Cloud Operations and Analytics: Improving Distributed Systems Reliability usi...
Cloud Operations and Analytics: Improving Distributed Systems Reliability usi...
 
Introduction to Software Reverse Engineering
Introduction to Software Reverse EngineeringIntroduction to Software Reverse Engineering
Introduction to Software Reverse Engineering
 
Open & reproducible research - What can we do in practice?
Open & reproducible research - What can we do in practice?Open & reproducible research - What can we do in practice?
Open & reproducible research - What can we do in practice?
 
Software Heritage, a revolutionary infrastructure for software source code, O...
Software Heritage, a revolutionary infrastructure for software source code, O...Software Heritage, a revolutionary infrastructure for software source code, O...
Software Heritage, a revolutionary infrastructure for software source code, O...
 
Of Changes and Their History
Of Changes and Their HistoryOf Changes and Their History
Of Changes and Their History
 
Icpc16.ppt
Icpc16.pptIcpc16.ppt
Icpc16.ppt
 
Icpc16.ppt
Icpc16.pptIcpc16.ppt
Icpc16.ppt
 
Open Source Software Storyboard Ver9
Open Source Software Storyboard Ver9Open Source Software Storyboard Ver9
Open Source Software Storyboard Ver9
 
An Overview Of The Singularity Project
An  Overview Of The  Singularity  ProjectAn  Overview Of The  Singularity  Project
An Overview Of The Singularity Project
 
Using Docker Containers to Improve Reproducibility in Software and Web Engine...
Using Docker Containers to Improve Reproducibility in Software and Web Engine...Using Docker Containers to Improve Reproducibility in Software and Web Engine...
Using Docker Containers to Improve Reproducibility in Software and Web Engine...
 
Tsunami of Technologies. Are we prepared?
Tsunami of Technologies. Are we prepared?Tsunami of Technologies. Are we prepared?
Tsunami of Technologies. Are we prepared?
 
Codemotion Berlin 2015 recap
Codemotion Berlin 2015   recapCodemotion Berlin 2015   recap
Codemotion Berlin 2015 recap
 
Primers or Reminders? The Effects of Existing Review Comments on Code Review
Primers or Reminders? The Effects of Existing Review Comments on Code ReviewPrimers or Reminders? The Effects of Existing Review Comments on Code Review
Primers or Reminders? The Effects of Existing Review Comments on Code Review
 
Go open2010 sde_20100417
Go open2010 sde_20100417Go open2010 sde_20100417
Go open2010 sde_20100417
 
International Journal of Engineering Research and Development
International Journal of Engineering Research and DevelopmentInternational Journal of Engineering Research and Development
International Journal of Engineering Research and Development
 

Plus de Scilab

Statistical Analysis for Robust Design
Statistical Analysis for Robust DesignStatistical Analysis for Robust Design
Statistical Analysis for Robust DesignScilab
 
Electric motor optimization
Electric motor optimizationElectric motor optimization
Electric motor optimizationScilab
 
Asteroidlanding - Scilab conference 2019 Keynote
Asteroidlanding - Scilab conference 2019 KeynoteAsteroidlanding - Scilab conference 2019 Keynote
Asteroidlanding - Scilab conference 2019 KeynoteScilab
 
Faster Time to Market using Scilab/XCOS/X2C for motor control algorithm devel...
Faster Time to Market using Scilab/XCOS/X2C for motor control algorithm devel...Faster Time to Market using Scilab/XCOS/X2C for motor control algorithm devel...
Faster Time to Market using Scilab/XCOS/X2C for motor control algorithm devel...Scilab
 
Scilab and Xcos for Very Low Earth Orbits satellites modelling
Scilab and Xcos for Very Low Earth Orbits satellites modellingScilab and Xcos for Very Low Earth Orbits satellites modelling
Scilab and Xcos for Very Low Earth Orbits satellites modellingScilab
 
X2C -a tool for model-based control development and automated code generation...
X2C -a tool for model-based control development and automated code generation...X2C -a tool for model-based control development and automated code generation...
X2C -a tool for model-based control development and automated code generation...Scilab
 
A Real-Time Interface for Xcos – an illustrative demonstration using a batter...
A Real-Time Interface for Xcos – an illustrative demonstration using a batter...A Real-Time Interface for Xcos – an illustrative demonstration using a batter...
A Real-Time Interface for Xcos – an illustrative demonstration using a batter...Scilab
 
Aircraft Simulation Model and Flight Control Laws Design Using Scilab and XCos
Aircraft Simulation Model and Flight Control Laws Design Using Scilab and XCosAircraft Simulation Model and Flight Control Laws Design Using Scilab and XCos
Aircraft Simulation Model and Flight Control Laws Design Using Scilab and XCosScilab
 
Scilab for real dummies j.heikell - part3
Scilab for real dummies j.heikell - part3Scilab for real dummies j.heikell - part3
Scilab for real dummies j.heikell - part3Scilab
 
Scilab for real dummies j.heikell - part 2
Scilab for real dummies j.heikell - part 2Scilab for real dummies j.heikell - part 2
Scilab for real dummies j.heikell - part 2Scilab
 
Scilab for real dummies j.heikell - part 1
Scilab for real dummies j.heikell - part 1Scilab for real dummies j.heikell - part 1
Scilab for real dummies j.heikell - part 1Scilab
 
Multiobjective optimization and Genetic algorithms in Scilab
Multiobjective optimization and Genetic algorithms in ScilabMultiobjective optimization and Genetic algorithms in Scilab
Multiobjective optimization and Genetic algorithms in ScilabScilab
 
Scilab optimization workshop
Scilab optimization workshop Scilab optimization workshop
Scilab optimization workshop Scilab
 
INRA @ Scilab Conference 2018
INRA @ Scilab Conference 2018INRA @ Scilab Conference 2018
INRA @ Scilab Conference 2018Scilab
 
Qualcomm @ Scilab Conference 2018
Qualcomm @ Scilab Conference 2018Qualcomm @ Scilab Conference 2018
Qualcomm @ Scilab Conference 2018Scilab
 
Sanofi @ Scilab Conference 2018
Sanofi @ Scilab Conference 2018Sanofi @ Scilab Conference 2018
Sanofi @ Scilab Conference 2018Scilab
 
University of Applied Science Esslingen @ Scilab Conference 2018
University of Applied Science Esslingen @ Scilab Conference 2018University of Applied Science Esslingen @ Scilab Conference 2018
University of Applied Science Esslingen @ Scilab Conference 2018Scilab
 
DLR @ Scilab Conference 2018
DLR @ Scilab Conference 2018DLR @ Scilab Conference 2018
DLR @ Scilab Conference 2018Scilab
 
Fraunhofer IIS @ Scilab Conference 2018
Fraunhofer IIS @ Scilab Conference 2018Fraunhofer IIS @ Scilab Conference 2018
Fraunhofer IIS @ Scilab Conference 2018Scilab
 
Arcelormittal @ Scilab Conference 2018
Arcelormittal @ Scilab Conference 2018Arcelormittal @ Scilab Conference 2018
Arcelormittal @ Scilab Conference 2018Scilab
 

Plus de Scilab (20)

Statistical Analysis for Robust Design
Statistical Analysis for Robust DesignStatistical Analysis for Robust Design
Statistical Analysis for Robust Design
 
Electric motor optimization
Electric motor optimizationElectric motor optimization
Electric motor optimization
 
Asteroidlanding - Scilab conference 2019 Keynote
Asteroidlanding - Scilab conference 2019 KeynoteAsteroidlanding - Scilab conference 2019 Keynote
Asteroidlanding - Scilab conference 2019 Keynote
 
Faster Time to Market using Scilab/XCOS/X2C for motor control algorithm devel...
Faster Time to Market using Scilab/XCOS/X2C for motor control algorithm devel...Faster Time to Market using Scilab/XCOS/X2C for motor control algorithm devel...
Faster Time to Market using Scilab/XCOS/X2C for motor control algorithm devel...
 
Scilab and Xcos for Very Low Earth Orbits satellites modelling
Scilab and Xcos for Very Low Earth Orbits satellites modellingScilab and Xcos for Very Low Earth Orbits satellites modelling
Scilab and Xcos for Very Low Earth Orbits satellites modelling
 
X2C -a tool for model-based control development and automated code generation...
X2C -a tool for model-based control development and automated code generation...X2C -a tool for model-based control development and automated code generation...
X2C -a tool for model-based control development and automated code generation...
 
A Real-Time Interface for Xcos – an illustrative demonstration using a batter...
A Real-Time Interface for Xcos – an illustrative demonstration using a batter...A Real-Time Interface for Xcos – an illustrative demonstration using a batter...
A Real-Time Interface for Xcos – an illustrative demonstration using a batter...
 
Aircraft Simulation Model and Flight Control Laws Design Using Scilab and XCos
Aircraft Simulation Model and Flight Control Laws Design Using Scilab and XCosAircraft Simulation Model and Flight Control Laws Design Using Scilab and XCos
Aircraft Simulation Model and Flight Control Laws Design Using Scilab and XCos
 
Scilab for real dummies j.heikell - part3
Scilab for real dummies j.heikell - part3Scilab for real dummies j.heikell - part3
Scilab for real dummies j.heikell - part3
 
Scilab for real dummies j.heikell - part 2
Scilab for real dummies j.heikell - part 2Scilab for real dummies j.heikell - part 2
Scilab for real dummies j.heikell - part 2
 
Scilab for real dummies j.heikell - part 1
Scilab for real dummies j.heikell - part 1Scilab for real dummies j.heikell - part 1
Scilab for real dummies j.heikell - part 1
 
Multiobjective optimization and Genetic algorithms in Scilab
Multiobjective optimization and Genetic algorithms in ScilabMultiobjective optimization and Genetic algorithms in Scilab
Multiobjective optimization and Genetic algorithms in Scilab
 
Scilab optimization workshop
Scilab optimization workshop Scilab optimization workshop
Scilab optimization workshop
 
INRA @ Scilab Conference 2018
INRA @ Scilab Conference 2018INRA @ Scilab Conference 2018
INRA @ Scilab Conference 2018
 
Qualcomm @ Scilab Conference 2018
Qualcomm @ Scilab Conference 2018Qualcomm @ Scilab Conference 2018
Qualcomm @ Scilab Conference 2018
 
Sanofi @ Scilab Conference 2018
Sanofi @ Scilab Conference 2018Sanofi @ Scilab Conference 2018
Sanofi @ Scilab Conference 2018
 
University of Applied Science Esslingen @ Scilab Conference 2018
University of Applied Science Esslingen @ Scilab Conference 2018University of Applied Science Esslingen @ Scilab Conference 2018
University of Applied Science Esslingen @ Scilab Conference 2018
 
DLR @ Scilab Conference 2018
DLR @ Scilab Conference 2018DLR @ Scilab Conference 2018
DLR @ Scilab Conference 2018
 
Fraunhofer IIS @ Scilab Conference 2018
Fraunhofer IIS @ Scilab Conference 2018Fraunhofer IIS @ Scilab Conference 2018
Fraunhofer IIS @ Scilab Conference 2018
 
Arcelormittal @ Scilab Conference 2018
Arcelormittal @ Scilab Conference 2018Arcelormittal @ Scilab Conference 2018
Arcelormittal @ Scilab Conference 2018
 

Dernier

Uncommon Grace The Autobiography of Isaac Folorunso
Uncommon Grace The Autobiography of Isaac FolorunsoUncommon Grace The Autobiography of Isaac Folorunso
Uncommon Grace The Autobiography of Isaac FolorunsoKayode Fayemi
 
lONG QUESTION ANSWER PAKISTAN STUDIES10.
lONG QUESTION ANSWER PAKISTAN STUDIES10.lONG QUESTION ANSWER PAKISTAN STUDIES10.
lONG QUESTION ANSWER PAKISTAN STUDIES10.lodhisaajjda
 
Dreaming Music Video Treatment _ Project & Portfolio III
Dreaming Music Video Treatment _ Project & Portfolio IIIDreaming Music Video Treatment _ Project & Portfolio III
Dreaming Music Video Treatment _ Project & Portfolio IIINhPhngng3
 
Report Writing Webinar Training
Report Writing Webinar TrainingReport Writing Webinar Training
Report Writing Webinar TrainingKylaCullinane
 
Dreaming Marissa Sánchez Music Video Treatment
Dreaming Marissa Sánchez Music Video TreatmentDreaming Marissa Sánchez Music Video Treatment
Dreaming Marissa Sánchez Music Video Treatmentnswingard
 
The workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdf
The workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdfThe workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdf
The workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdfSenaatti-kiinteistöt
 
Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...
Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...
Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...David Celestin
 
AWS Data Engineer Associate (DEA-C01) Exam Dumps 2024.pdf
AWS Data Engineer Associate (DEA-C01) Exam Dumps 2024.pdfAWS Data Engineer Associate (DEA-C01) Exam Dumps 2024.pdf
AWS Data Engineer Associate (DEA-C01) Exam Dumps 2024.pdfSkillCertProExams
 
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptx
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptxChiulli_Aurora_Oman_Raffaele_Beowulf.pptx
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptxraffaeleoman
 
SOLID WASTE MANAGEMENT SYSTEM OF FENI PAURASHAVA, BANGLADESH.pdf
SOLID WASTE MANAGEMENT SYSTEM OF FENI PAURASHAVA, BANGLADESH.pdfSOLID WASTE MANAGEMENT SYSTEM OF FENI PAURASHAVA, BANGLADESH.pdf
SOLID WASTE MANAGEMENT SYSTEM OF FENI PAURASHAVA, BANGLADESH.pdfMahamudul Hasan
 
My Presentation "In Your Hands" by Halle Bailey
My Presentation "In Your Hands" by Halle BaileyMy Presentation "In Your Hands" by Halle Bailey
My Presentation "In Your Hands" by Halle Baileyhlharris
 
If this Giant Must Walk: A Manifesto for a New Nigeria
If this Giant Must Walk: A Manifesto for a New NigeriaIf this Giant Must Walk: A Manifesto for a New Nigeria
If this Giant Must Walk: A Manifesto for a New NigeriaKayode Fayemi
 
Digital collaboration with Microsoft 365 as extension of Drupal
Digital collaboration with Microsoft 365 as extension of DrupalDigital collaboration with Microsoft 365 as extension of Drupal
Digital collaboration with Microsoft 365 as extension of DrupalFabian de Rijk
 
Bring back lost lover in USA, Canada ,Uk ,Australia ,London Lost Love Spell C...
Bring back lost lover in USA, Canada ,Uk ,Australia ,London Lost Love Spell C...Bring back lost lover in USA, Canada ,Uk ,Australia ,London Lost Love Spell C...
Bring back lost lover in USA, Canada ,Uk ,Australia ,London Lost Love Spell C...amilabibi1
 

Dernier (15)

Uncommon Grace The Autobiography of Isaac Folorunso
Uncommon Grace The Autobiography of Isaac FolorunsoUncommon Grace The Autobiography of Isaac Folorunso
Uncommon Grace The Autobiography of Isaac Folorunso
 
lONG QUESTION ANSWER PAKISTAN STUDIES10.
lONG QUESTION ANSWER PAKISTAN STUDIES10.lONG QUESTION ANSWER PAKISTAN STUDIES10.
lONG QUESTION ANSWER PAKISTAN STUDIES10.
 
Dreaming Music Video Treatment _ Project & Portfolio III
Dreaming Music Video Treatment _ Project & Portfolio IIIDreaming Music Video Treatment _ Project & Portfolio III
Dreaming Music Video Treatment _ Project & Portfolio III
 
ICT role in 21st century education and it's challenges.pdf
ICT role in 21st century education and it's challenges.pdfICT role in 21st century education and it's challenges.pdf
ICT role in 21st century education and it's challenges.pdf
 
Report Writing Webinar Training
Report Writing Webinar TrainingReport Writing Webinar Training
Report Writing Webinar Training
 
Dreaming Marissa Sánchez Music Video Treatment
Dreaming Marissa Sánchez Music Video TreatmentDreaming Marissa Sánchez Music Video Treatment
Dreaming Marissa Sánchez Music Video Treatment
 
The workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdf
The workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdfThe workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdf
The workplace ecosystem of the future 24.4.2024 Fabritius_share ii.pdf
 
Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...
Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...
Proofreading- Basics to Artificial Intelligence Integration - Presentation:Sl...
 
AWS Data Engineer Associate (DEA-C01) Exam Dumps 2024.pdf
AWS Data Engineer Associate (DEA-C01) Exam Dumps 2024.pdfAWS Data Engineer Associate (DEA-C01) Exam Dumps 2024.pdf
AWS Data Engineer Associate (DEA-C01) Exam Dumps 2024.pdf
 
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptx
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptxChiulli_Aurora_Oman_Raffaele_Beowulf.pptx
Chiulli_Aurora_Oman_Raffaele_Beowulf.pptx
 
SOLID WASTE MANAGEMENT SYSTEM OF FENI PAURASHAVA, BANGLADESH.pdf
SOLID WASTE MANAGEMENT SYSTEM OF FENI PAURASHAVA, BANGLADESH.pdfSOLID WASTE MANAGEMENT SYSTEM OF FENI PAURASHAVA, BANGLADESH.pdf
SOLID WASTE MANAGEMENT SYSTEM OF FENI PAURASHAVA, BANGLADESH.pdf
 
My Presentation "In Your Hands" by Halle Bailey
My Presentation "In Your Hands" by Halle BaileyMy Presentation "In Your Hands" by Halle Bailey
My Presentation "In Your Hands" by Halle Bailey
 
If this Giant Must Walk: A Manifesto for a New Nigeria
If this Giant Must Walk: A Manifesto for a New NigeriaIf this Giant Must Walk: A Manifesto for a New Nigeria
If this Giant Must Walk: A Manifesto for a New Nigeria
 
Digital collaboration with Microsoft 365 as extension of Drupal
Digital collaboration with Microsoft 365 as extension of DrupalDigital collaboration with Microsoft 365 as extension of Drupal
Digital collaboration with Microsoft 365 as extension of Drupal
 
Bring back lost lover in USA, Canada ,Uk ,Australia ,London Lost Love Spell C...
Bring back lost lover in USA, Canada ,Uk ,Australia ,London Lost Love Spell C...Bring back lost lover in USA, Canada ,Uk ,Australia ,London Lost Love Spell C...
Bring back lost lover in USA, Canada ,Uk ,Australia ,London Lost Love Spell C...
 

ScilabTEC 2015 - Irill

  • 1. Preserving Software Challenges and Opportunities for Reproducibility of Science and Technology Roberto Di Cosmo Scilabtec 2015 - Paris Irill - INRIA - University Paris Diderot roberto@dicosmo.org 21st of May 2015 Roberto Di Cosmo Preserving Software for Reproductibility 1/26
  • 2. How we built our scientific knowledge The experimental method make an observation formulate an hypothesis set up an experiment formulate a theory And then we reproduce and verify. Reproducibility is the key non-reproducible single occurrences are of no significance to science Karl Popper, The Logic of Scientific Discovery, 1934 Roberto Di Cosmo Preserving Software for Reproductibility 3/26
  • 3. Reproducibility, today Reproducibility (Wikipedia) the ability of an entire experiment or study to be reproduced, either by the researcher or by someone else working independently. It is one of the main principles of the scientific method. Why we want it foundation of the scientific method accelerator of research: allows to build upon previous work visibility reproducible results are cited more often Piwowar et al. Sharing Detailed Research Data Is Associated with Increased Citation Rate. PLoS ONE 2(3): e308, 2007 transparency of results eases acceptance necessary for industrial transfer reproducibility is the essence of industry! Roberto Di Cosmo Preserving Software for Reproductibility 4/26
  • 4. Today: Software is Science’s cornerstone Software is an essential component of modern scientific research Deep knowledge from all fields is embodied in complex software systems Top 100 papers (Nature, October 2014) [...] the vast majority describe experimen- tal methods or software that have become essential in their fields. http: // www. nature. com/ news/ the-top-100-papers-1. 16224 Software is the pillar of science Roberto Di Cosmo Preserving Software for Reproductibility 6/26
  • 5. Software is Pervasive At the heart of technology televisions/fridges ≈ 10M SLOC phones ≈ 20M SLOC cars ≈ 100M SLOC IoT ... Key mediator for accessing all information (c) Banski Information is a main pillar of our modern societies. Absent an ability to correctly interpret dig- ital information, we are left with [...] “rot- ting bits” [...] of no value. Vinton G. Cerf IEEE 2011 Software is an essential enabler for all technology Roberto Di Cosmo Preserving Software for Reproductibility 7/26
  • 6. Reproducibility in the digital age For an experiment involving software, we need open access to the scientific article describing it open data sets used in the experiment source code of all the components environment of execution stable references between all this The first two items are already widely acknowledged open access Berlin declaration, 2003 http://openaccess.mpg.de open data sets Declaration on open access to scientific data, OECD, 2004 http://bit.ly/1lGubJQ What about the code? Roberto Di Cosmo Preserving Software for Reproductibility 8/26
  • 7. Why Open Source? Having access to (all) the source of (all) the code used in an experiment is important: even the simplest experiments depend on a wealth of components and configuration options source code is like the proof used in a theorem: Fermat statements like “the details are omitted due to lack of space” access to all the source code is not just necessary to reproduce, it is also useful to evolve and modify, to build new experiments from the old ones For science, and industry ... Free and Open Source Software is the best choice! Roberto Di Cosmo Preserving Software for Reproductibility 9/26
  • 8. Software and reproducibility A fundamental question How are we doing, regarding reproducibility, in Software? The case of Computer Systems Research A field with Computer experts ... we have high expectations! Christian Collberg set out to check them. Measuring Reproducibility in Computer Systems Research Long and detailed technical report, March 2014 http://reproducibility.cs.arizona.edu/v1/tr.pdf Roberto Di Cosmo Preserving Software for Reproductibility 11/26
  • 9. Collberg’s report from the trenches Analysis of 613 papers 8 ACM conferences: ASPLOS’12, CCS’12, OOPSLA’12, OSDI’12, PLDI’12, SIGMOD’12, SOSP’11, VLDB’12 5 journals: TACO’9, TISSEC’15, TOCS’30, TODS’37, TOPLAS’34 all very practical oriented The basic question can we get the code to build and run? The workflow Roberto Di Cosmo Preserving Software for Reproductibility 12/26
  • 10. The result That’s a whopping 81% of non reproducible works! Roberto Di Cosmo Preserving Software for Reproductibility 13/26
  • 11. The reasons (or, “the dog ate my program”) Many issues, nice anectotes, and it finally boils down to Availability Traceability Environment Automation Documentation Understanding (Open Source) The first two are actually important software preservation issues: yes, code can be destroyed, and we can loose trace of it! Roberto Di Cosmo Preserving Software for Reproductibility 14/26
  • 12. Like all digital information, software is fragile An example is worth a thousand words... Roberto Di Cosmo Preserving Software for Reproductibility 16/26
  • 13. Inconsiderate or malicious loss of code The Year 2000 Bug ... uncovered an inconvenient truth in 1999, an estimated 40% of companies had either lost, or thrown away the original source code for their systems! CodeSpaces: source code hosting, 2007-2014 Yes, for seven years all seemed ok. No, they did not recover the data. Roberto Di Cosmo Preserving Software for Reproductibility 17/26
  • 14. Business-driven loss of code support: Google Roberto Di Cosmo Preserving Software for Reproductibility 18/26
  • 15. Business-driven loss of code support: Google, cont’d. Roberto Di Cosmo Preserving Software for Reproductibility 19/26
  • 16. Disruption of the web of reference Web links are not permanent (even permalinks) there is no general guarantee that a URL which at one time points to a given object continues to do so T. Berners-Lee et al. RFC 1738. URLs used in articles decay! Analysis of IEEE Computer (Computer), and the Communications of the ACM (CACM): 1995-1999 the half-life of a referenced URL is approximately 4 years from its publication date D. Spinellis. The Decay and Failures of URL References. Communications of the ACM, 46(1):71-77, January 2003. Roberto Di Cosmo Preserving Software for Reproductibility 20/26
  • 17. Preservation of digital information is on the rise A wealth of initiatives around us generalist the Web at archive.org; National Digital Information Infrastructure and Preservation Program (NDIIPP, USA); ... culture books, music, video: INA (FR); http://www.nationalarchives.gov.uk (UK) ... social networks Twitter is archived by the Library of Congress! libraries and scholarly work ArXiv; Digital Preservation Network http://www.dpn.org/; ... scientific data CINES (FR); Zenodo/OpenAire (CERN); ... And yet, up to now... software is largely ignored as an object of preservation... computer scientists are absent from the preservation landscape! It’s time to change all this! Roberto Di Cosmo Preserving Software for Reproductibility 22/26
  • 18. Software Preservation Challenges: it’s different! Unlike for books or movies, there is a big difference between using and understanding a piece of software. Using software Requires an executable, and access to the execution environment Understanding software Requires access to the source code: The source code for a work means the preferred form of the work for making modifications to it. — GNU General Public Licence, version 2 For reproducibility, we need both! Roberto Di Cosmo Preserving Software for Reproductibility 23/26
  • 19. Software Preservation Challenges: it’s different! Preserving software is more complex than archiving books or scientific articles. interdependencies a program relies on other software as well as specific hardware components to be executed; so does our understanding of its functionality evolution software is a live object: its detailed history contains key knowledge To preserve software it is not enough to mimic processes that were intended to archive books, scientific articles or data. Roberto Di Cosmo Preserving Software for Reproductibility 24/26
  • 20. The Knowledge Conservancy Magic Triangle articles ArXiv, HAL, ... data Zenodo, OpenAire, ... software is the next to come, and is our mission Roberto Di Cosmo Preserving Software for Reproductibility 25/26
  • 21. Conclusions Preservation is the foundation of all reproductibility efforts We all must do our best to preserve and make accessible scientific articles and data preserve and make accessible the software Because software embodies our scientific and technical knowledge Conoscere `e saper fare. Giambattista Vico, 1668–1744, Naples Questions ? Roberto Di Cosmo Preserving Software for Reproductibility 26/26