Reproduzierbare Veröffentlichungen

(Arne Babenhauserheide)
2013-07-01: Erste Version des Vortrages.

Erste Version des Vortrages.

diff --git a/Makefile.am b/Makefile.am
new file mode 100644
--- /dev/null
+++ b/Makefile.am
@@ -0,0 +1,11 @@
+vortrag_DATA = vortrag.pdf data.txt
+vortrag = vortrag.org
+vortragdir = .
+# dist_pkgdata_DATA = rohdaten 
+EXTRA_DIST = ${vortrag} ${vortrag_DATA} # ${vortrag} ${dist_pkgdata_DATA} # quelldateien
+MOSTLYCLEANFILES = \#* *~ *.bak # kill editor backups
+
+${vortrag_DATA} : ${vortrag}
+	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~; else rm -f $(basename $<).tex $(basename $<).tex~; fi
diff --git a/build.sh b/build.sh
new file mode 100755
--- /dev/null
+++ b/build.sh
@@ -0,0 +1,6 @@
+#!/bin/sh
+# build the makefile and the project.
+
+# To change the build setup, edit configure.ac and Makefile.am and then run this script again.
+
+autoreconf -i && ./configure && make
diff --git a/configure.ac b/configure.ac
new file mode 100644
--- /dev/null
+++ b/configure.ac
@@ -0,0 +1,15 @@
+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([Reproduzierbare Veroeffentlichungen], [0.1], [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
diff --git a/data.txt b/data.txt
new file mode 100644
--- /dev/null
+++ b/data.txt
@@ -0,0 +1,5 @@
+2.077045493207819726e-01 8.789280949462739967e-01 1.148250668675885322e-01 9.386410028010241380e-01 6.672122058294236435e-01
+3.851546103070094818e-01 2.622169562735304771e-01 3.521454947506447164e-01 2.546845708164802158e-02 8.384446062787209719e-01
+5.609522673058446873e-01 8.061953481371646468e-01 1.740542857983006231e-01 6.706061441260142697e-01 7.101719102776303805e-01
+9.562398051681706423e-01 9.288059568566071622e-01 2.927365134199160224e-01 4.313684214928887872e-01 5.154363986871470793e-01
+9.631257367141664583e-01 8.267749966285442564e-01 1.022771169288561044e-01 9.971998301242487317e-01 1.006236710957820746e-01
diff --git a/vortrag.org b/vortrag.org
new file mode 100644
--- /dev/null
+++ b/vortrag.org
@@ -0,0 +1,109 @@
+#+Title: Reproduzierbare Veröffentlichungen
+
+#+LaTeX_CLASS: beamer
+# switch the options to handout to generate a handout.
+#+LaTeX_CLASS_OPTIONS: [presentation, bigger]
+#+Options: H:2 toc:nil
+
+#+LaTeX_HEADER: \makeatletter
+#+LaTeX_HEADER: \renewenvironment{minted@colorbg}[1]{
+#+LaTeX_HEADER: \setlength{\fboxsep}{\z@}
+#+LaTeX_HEADER: \def\minted@bgcol{#1}
+#+LaTeX_HEADER: \noindent
+#+LaTeX_HEADER: \begin{lrbox}{\minted@bgbox}
+#+LaTeX_HEADER: \begin{minipage}{\linewidth}}
+#+LaTeX_HEADER: {\end{minipage}
+#+LaTeX_HEADER: \end{lrbox}%
+#+LaTeX_HEADER: \colorbox{\minted@bgcol}{\usebox{\minted@bgbox}}}
+#+LaTeX_HEADER: \makeatother
+
+#+BEGIN_LaTeX
+\definecolor{mintedbg}{rgb}{0.95,0.95,0.95}
+#+END_LaTeX
+
+#+BEGIN_SRC elisp :exports none
+  (setq org-latex-minted-options
+    '(("bgcolor" "mintedbg") ("frame" "single") ("framesep" "6pt") ("mathescape" "true") ("fontsize" "\\footnotesize")))
+  nil
+#+END_SRC
+
+#+RESULTS:
+
+* Problem
+** Herausforderungen
+*** Columns                                                       :B_columns:
+    :PROPERTIES:
+    :BEAMER_env: columns
+    :BEAMER_opt: t
+    :END:
+**** Wissenschaft                                             :B_block:BMCOL:
+    :PROPERTIES:
+    :BEAMER_col: 0.5
+    :BEAMER_env: block
+    :END:
+
+- referenzierbar?
+- vertrauenswürdig?
+- prüfbar?
+- wiederholbar?
+
+/Vertrauen in andere durch saubere Arbeit./
+
+**** Forschende                                               :B_block:BMCOL:
+    :PROPERTIES:
+    :BEAMER_col: 0.5
+    :BEAMER_env: block
+    :BEAMER_envargs: <3->
+    :END:
+
+- „Welche Daten nutze ich?“
+- „Liefere ich alle Daten?“
+- „Wie habe ich das Paper damals erstellt?“
+
+/Vertrauen in die eigene Veröffentlichung./
+
+* Ansatz
+** Anforderungen an ein System
+
+- Diagramme und Tabellen aktuell halten
+- Benötigte Daten und Skripte beilegen
+- Automatisiert und gesichert
+
+* Realisierung
+** org-mode + autotools
+*** Columns                                                       :B_columns:
+    :PROPERTIES:
+    :BEAMER_env: columns
+    :END:
+**** Emacs Org-Mode                                           :B_block:BMCOL:
+     :PROPERTIES:
+     :BEAMER_col: 0.5
+     :BEAMER_env: block
+     :END:
+
+#+BEGIN_src sh
+  #+BEGIN_SRC python
+    import pylab
+    data = pylab.genfromtxt(
+        "data.txt")
+    pylab.plot(data)
+    pylab.savefig(
+        "image.png")
+    print "[[./image.png]]"
+  # #+END_src
+#+END_src
+
+**** GNU autotools distcheck                                  :B_block:BMCOL:
+     :PROPERTIES:
+     :BEAMER_col: 0.5
+     :BEAMER_env: block
+     :END:
+
+#+BEGIN_SRC sh
+  autoreconf -i && \
+  ./configure && \
+  make distcheck
+#+END_SRC
+
+*** Analog
+Versuchsaufbau *exakt* beschreiben.