• Keine Ergebnisse gefunden

Reproduzierbare Veröffentlichungen

N/A
N/A
Protected

Academic year: 2022

Aktie "Reproduzierbare Veröffentlichungen"

Copied!
13
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Reproduzierbare Veröffentlichungen

Arne Babenhauserheide

20. Dezember 2013

(2)

Falscher Anreiz

Die Versuchung

„Haben Sie einmal ein Paper mit per Skript erstellten Grafiken veröffentlicht?“

„Haben Sie Skripte und Daten veröffentlicht?“

„Warum erfinden Sie die Daten nicht? Das wäre weniger Arbeit. . . “

„Niemals! Das verbietet die wissenschaftliche Integrität!“

Doch es passiert - leider

Einstieg: „passte ich den Untersuchungsentwurf an“. Dietrich Stapel: „Es war grau und es war üblich“.

Sturz: „erfindet die Daten“.

„Forscher gratulieren“.

„Drei [seiner] Doktoranden sind Ungereimtheiten [. . . ] aufgefallen“.

[Quarks & Co., 2013-06-04]

(3)

Falscher Anreiz

Die Versuchung

„Haben Sie einmal ein Paper mit per Skript erstellten Grafiken veröffentlicht?“

„Haben Sie Skripte und Daten veröffentlicht?“

„Warum erfinden Sie die Daten nicht? Das wäre weniger Arbeit. . . “

„Niemals! Das verbietet die wissenschaftliche Integrität!“

Doch es passiert - leider

Einstieg: „passte ich den Untersuchungsentwurf an“.

Dietrich Stapel: „Es war grau und es war üblich“.

Sturz: „erfindet die Daten“.

„Forscher gratulieren“.

„Drei [seiner] Doktoranden sind Ungereimtheiten [. . . ] aufgefallen“.

[Quarks & Co., 2013-06-04]

(4)

Herausforderungen

Wissenschaft

referenzierbar?

vertrauenswürdig?

prüfbar?

wiederholbar?

Vertrauen in andere durch saubere Veröffentlichungen.

Forschende

„Welche Daten nutze ich?“

„Liefere ich alle Daten?“

„Wie habe ich das Paper damals erstellt?“

Vertrauen in die eigene Veröffentlichung.

(5)

Anforderungen an ein System

Diagramme und Tabellen aus aktuellen Daten Benötigte Daten und Skripte beilegen

Automatisiert mit Selbsttest

(6)

Eine Lösung: org-mode + autotools

Emacs Org-Mode

#+BEGIN_SRC python import pylab

data = pylab.genfromtxt(

"data.txt") pylab.plot(data) pylab.savefig(

"image.png")

print "#+caption: desc"

print "[[./image.png]]"

#+END_src

GNU autotools distcheck

autoreconf -i && \ ./configure && \ make distcheck

→ repro-pub-0.1.tar.gz

(7)

Analog

Versuchsaufbau exakt beschreiben.

(8)

Danke für Ihre Aufmerksamkeit!

Bitte stellen Sie Ihre Fragen

(9)

Quellen

Emacs: gnu.org/s/emacs Org-Mode: orgmode.org

GNU autoconf: gnu.org/s/autoconf GNU automake: gnu.org/s/automake Einfacher Einstieg:

draketo.de/light/english/free-software/makefile-to-autotools

Kontakt

arne.babenhauserheide@kit.edu oder arne_bab@web.de

(10)

Hier genutzte Werkzeuge

Autoconf (configure.ac) Automake (Makefile.am)

Emacs + org-mode (vortrag.org)

(11)

configure.ac

dnl run ‘autoreconf -i‘ to generate a configure script.

dnl Then run ./configure to generate a Makefile.

dnl Finally run make to generate the project.

AC_INIT([Repro Pub], [0.5.0],

[arne.babenhauserheide@kit.edu])

# Check for programs I need for my build AC_CANONICAL_TARGET

AC_ARG_VAR([emacs], [How to call Emacs.]) AC_CHECK_TARGET_TOOL([emacs], [emacs], [no]) AS_IF([test "x$emacs" = "xno"],

[AC_MSG_ERROR([cannot find Emacs.])])

# Run automake

AM_INIT_AUTOMAKE([foreign]) AM_MAINTAINER_MODE([enable]) AC_CONFIG_FILES([Makefile]) AC_OUTPUT

(12)

Makefile.am (1/2)

# basic definitions vortrag = vortrag.pdf

vortrag_DATA = vortrag.org data.txt dist-tarball.png vortragdir = .

# dist_pkgdata_DATA = rohdaten

EXTRA_DIST = ${vortrag_DATA} ${vortrag}

# kill editor backups and latex stuff

MOSTLYCLEANFILES = \\\#* *~ *.bak *.vrb *.bbl \

*.blg *_flymake.*

CLEANFILES = ${vortrag}

DISTCLEANFILES = ${CLEANFILES} \\\#* *~ *.bak *.vrb *.bbl \

*.blg *_flymake.* auto/*el all : ${vortrag}

(13)

Makefile.am (2/2)

# emacs org-mode beamer build instructions

${vortrag} : ${vortrag_DATA}

if test "$<" != "$(notdir $<)"; then \ cp -u "$<" "$(notdir $<)"; fi

echo yes | @emacs@ --batch --load "~/.emacs" \ --visit "$(notdir $<)" \

--funcall org-beamer-export-to-pdf if test "$<" != "$(notdir $<)"; \

then rm -f "$(notdir $<)"; \

rm -f $(basename $(notdir $<)).tex \

$(basename $(notdir $<)).tex~ \ auto/$(basename $(notdir $<)).el; \ else rm -f $(basename $<).tex \

$(basename $<).tex~ \ auto/$(basename $<).el; \ fi

Referenzen

ÄHNLICHE DOKUMENTE

An dessen Institut habilitierte er sich 1960 für Theoretische Physik und baute ab 1970 das Institut für Kernphysik zielgerichtet auf.. 1972 zum ordentlichen Professor ernannt,

Nachwuchstalente im Bereich elektronikbasier- ter Systeme (EBS) haben eine neue attraktive Option, interessante Dissertationsthemen im regen Austausch mit den EBS-Playern zu bear-

Ein unter Leitung der TU Graz entwickelter Euro- päischer Führerschein für Robotik und künstliche Intelligenz (KI) macht Menschen fit für die digita- le Zukunft.. Das Institut

Ganz besondere Verdienste um das Entstehen dieses Gebäudekomplexes erwarb sich Rudolf Gebauer, der 1955 an die Lehrkanzel für Ex- perimentalphysik der Technischen Hochschule

Im Beisein von Landeshauptmann Her- mann Schützenhöfer und Landesrätin Barbara Eibinger-Miedl unterzeichneten Ende Mai Rektor Harald Kainz sowie Vizerektor für Lehre Detlef Heck

Im Beisein von Landeshauptmann Her- mann Schützenhöfer und Landesrätin Barbara Eibinger-Miedl unterzeichneten Ende Mai Rektor Harald Kainz sowie Vizerektor für Lehre Detlef Heck

„Phönix 2012“: Auszeichnung für uni- versitäre Spin-offs: Ende Mai wurden aus Uni- versitäten hervorgegangene Unternehmen mit dem erstmals vergebenen Spin-off-Preis des

Geräteschau wieder zugänglich: Die Medizingeräteschau des Instituts für health care engineering ist nach Übersiedelung in die neuen Räumlichkeiten der Kopernikusgasse 24