aboutsummaryrefslogtreecommitdiff
path: root/reproducible-paper.tex
diff options
context:
space:
mode:
authorMohammad Akhlaghi <mohammad@akhlaghi.org>2019-06-21 19:24:46 +0100
committerMohammad Akhlaghi <mohammad@akhlaghi.org>2019-06-21 19:24:46 +0100
commit5b6414ac64a1c986a9ad6a1e05bbaccc7d7d8f38 (patch)
treefae939a5e39ca7b2d893e65f25f48daf2b1c94c6 /reproducible-paper.tex
parentddd1690dacaecdfa9bfe982935a1365c27b7491b (diff)
Adjusted for 16:9 aspect ratio, improved Git demonstration
For EWASS, they recommended a 16:9 aspect ratio. This is becoming the standard and after some tests, I saw felt that it does indeed show better on modern monitors while also giving more horizontal space. The slides are now changed to this aspect ratio and everything was slightly modified to show nicely in it. Also, an extra step was added to the Git demonstration steps to show how progress on the project branch happens independently of progress on the template.
Diffstat (limited to 'reproducible-paper.tex')
-rw-r--r--reproducible-paper.tex321
1 files changed, 171 insertions, 150 deletions
diff --git a/reproducible-paper.tex b/reproducible-paper.tex
index b0603de..0b0aaa6 100644
--- a/reproducible-paper.tex
+++ b/reproducible-paper.tex
@@ -1,4 +1,4 @@
-\documentclass[9pt,usenames,dvipsnames]{beamer}
+\documentclass[9pt,usenames,dvipsnames,aspectratio=169]{beamer}
%% Beamer settings.
%\setbeamertemplate{footline}[frame number]
@@ -92,7 +92,6 @@
-
\begin{frame}{Reproducibility crisis in the sciences/astronomy}
\begin{tcolorbox}[title=Snakes on a Spaceship -- An Overview of Python in Heliophysics]
\small ``...\alert{inadequate analysis descriptions} and loss of
@@ -117,7 +116,7 @@
\begin{frame}
\centering
- \includegraphics[width=0.6\linewidth]{img/schrodinger-code.png}
+ \includegraphics[width=0.45\linewidth]{img/schrodinger-code.png}
\footnotesize Original image from \href{https://www.redbubble.com/people/seriesclothing/works/28520432-the-flash-ciscos-shirt-wanted-dead-and-alive-scr-dingers-cat}{\texttt{https://www.redbubble.com}}
\end{frame}
@@ -125,13 +124,8 @@
- %% Initially in full opacity:
- \newcommand{\allopacity}{1}
-
-
-
-
%% Step-by-step slides.
+ \newcommand{\allopacity}{1}
\begin{frame}{General outline of a project} \include{tex/project-graph} \end{frame}
\newcommand{\paperinit}{}
\begin{frame}{General outline of a project} \include{tex/project-graph} \end{frame}
@@ -150,9 +144,11 @@
\begin{frame}{Example: Matplotlib (a Python visualization library) build dependencies}
\Wider[5em]{
\vspace{5mm}
- \includegraphics[width=\linewidth]{img/matplotlib.pdf}
+ \begin{center}
+ \includegraphics[width=0.9\linewidth]{img/matplotlib.pdf}
+ \end{center}
- \vspace{7mm}\tiny From ``Attributing and Referencing (Research)
+ \vspace{-1mm}\tiny From ``Attributing and Referencing (Research)
Software: Best Practices and Outlook from Inria'' (Alliez et
al. 2019,
\textcolor{blue}{\href{https://hal.archives-ouvertes.fr/hal-02135891}{hal-02135891}})
@@ -187,6 +183,7 @@
\newcommand{\paperfinal}{}
\begin{frame}{General outline of a project} \include{tex/project-graph} \end{frame}
+
%% Don't show the happy scientist or the existing containers box.
\let\paperinit\undefined
\let\allopacity\undefined
@@ -198,16 +195,17 @@
\begin{frame}{Science is a tricky business}
- \includegraphics[width=\linewidth]{img/nature-cartoon.jpg}
-
- \vspace{-0.2cm}
+ \begin{center}
+ \includegraphics[width=0.9\linewidth]{img/nature-cartoon.jpg}
+ \end{center}
+ \vspace{-0.3cm}\hfill
{\tiny Image from nature.com
(``\href{https://www.nature.com/articles/d41586-017-07522-z}{Five
- ways to fix statistics}'', Nov 2017)}
+ ways to fix statistics}'', Nov 2017)}\hspace{7mm}
- \vspace{0.2cm}
- \begin{tcolorbox}
+ \vspace{-1mm}
+ \begin{tcolorbox}[boxsep=0pt,left=1mm,right=1mm,top=1mm,bottom=1mm]
\small Data analysis [...] is a \alert{human
behaviour}. Researchers who hunt hard enough will turn up a
result that fits statistical criteria, but their
@@ -257,7 +255,7 @@
\begin{frame}{Predefined/exact software tools}
\small
\begin{columns}
- \column{5.5cm}
+ \column{10cm}
\begin{tcolorbox}[width=\linewidth, boxsep=1pt, left=1pt, right=1pt,
top=1pt, bottom=1pt, title=Reproducibility \&
software]
@@ -267,10 +265,10 @@
reproducibility.
\end{tcolorbox}
- \vspace{1cm}
+ \vspace{2cm}
\begin{itemize}
- \setlength\itemsep{0.4cm}
+ \setlength\itemsep{0.6cm}
\item \emph{Containers} or \emph{Virtual Machines} are a
\alert{binary black box}.
@@ -284,7 +282,7 @@
\alert{\texttt{apt}} or \alert{\texttt{brew}}).
\end{itemize}
- \column{5.5cm}
+ \column{5cm}
\includegraphics[width=\linewidth]{img/version.png}
\end{columns}
\end{frame}
@@ -296,7 +294,7 @@
\begin{frame}{Predefined/exact software tools}
\small
\begin{columns}
- \column{5.5cm}
+ \column{10cm}
\begin{tcolorbox}[width=\linewidth, boxsep=1pt, left=1pt, right=1pt,
top=1pt, bottom=1pt, title=Reproducibility \&
software]
@@ -306,10 +304,10 @@
reproducibility.
\end{tcolorbox}
- \vspace{1cm}
+ \vspace{2cm}
\begin{itemize}
- \setlength\itemsep{0.4cm}
+ \setlength\itemsep{0.6cm}
\item \emph{Containers} or \emph{Virtual Machines} are a
\alert{binary black box}.
@@ -323,7 +321,7 @@
\alert{\texttt{apt}} or \alert{\texttt{brew}}).
\end{itemize}
- \column{5.5cm}
+ \column{5cm}
\includegraphics[width=\linewidth]{img/version-highlighted.png}
\end{columns}
\end{frame}
@@ -336,9 +334,9 @@
\small
\begin{columns}
\column{5.5cm}
- \includegraphics[width=\linewidth]{img/env.png}
+ \includegraphics[width=0.9\linewidth]{img/env.png}
\column{5.5cm}
- \includegraphics[width=\linewidth]{img/build.png}
+ \includegraphics[width=0.9\linewidth]{img/build.png}
\end{columns}
\end{frame}
@@ -346,9 +344,9 @@
\small
\begin{columns}
\column{5.5cm}
- \includegraphics[width=\linewidth]{img/env-highlighted.png}
+ \includegraphics[width=0.9\linewidth]{img/env-highlighted.png}
\column{5.5cm}
- \includegraphics[width=\linewidth]{img/build-highlighted.png}
+ \includegraphics[width=0.9\linewidth]{img/build-highlighted.png}
\end{columns}
\end{frame}
@@ -356,58 +354,71 @@
- \newcommand{\redbdir}{\textcolor{green!80!black}{/PROJECT/PATH/software/installed/lib}}
- \begin{frame}{All dependencies (except C library and linker) built in project\\
- Linked libraries to NoiseChisel executable on GNU/Linux}
- \vspace{0.5cm}
- \tiny\texttt{
- \$ ldd .local/bin/astnoisechisel\\
- \hspace{0.5cm}linux-vdso.so.1 (0x00007fffdcbf7000)\\
- \hspace{0.5cm}libgnuastro.so.7 => \redbdir/libgnuastro.so.7 (0x00007f6745f39000)\\
- \hspace{0.5cm}libgit2.so.26 => \redbdir/libgit2.so.26 (0x00007f6745df1000)\\
- \hspace{0.5cm}libtiff.so.5 => \redbdir/libtiff.so.5 (0x00007f6745d77000)\\
- \hspace{0.5cm}liblzma.so.5 => \redbdir/liblzma.so.5 (0x00007f6745d4f000)\\
- \hspace{0.5cm}libjpeg.so.9 => \redbdir/libjpeg.so.9 (0x00007f6745d12000)\\
- \hspace{0.5cm}libwcs.so.6 => \redbdir/libwcs.so.6 (0x00007f6745ba8000)\\
- \hspace{0.5cm}libcfitsio.so.8 => \redbdir/libcfitsio.so.8 (0x00007f674588b000)\\
- \hspace{0.5cm}libcurl.so.4 => \redbdir/libcurl.so.4 (0x00007f6745811000)\\
- \hspace{0.5cm}libssl.so.1.1 => \redbdir/libssl.so.1.1 (0x00007f6745777000)\\
- \hspace{0.5cm}libcrypto.so.1.1 => \redbdir/libcrypto.so.1.1 (0x00007f6745491000)\\
- \hspace{0.5cm}libz.so.1 => \redbdir/libz.so.1 (0x00007f6745474000)\\
- \hspace{0.5cm}libgsl.so.23 => \redbdir/libgsl.so.23 (0x00007f67451e3000)\\
- \hspace{0.5cm}libgslcblas.so.0 => \redbdir/libgslcblas.so.0 (0x00007f67451a1000)\\
- \hspace{0.5cm}libbz2.so.1.0 => \redbdir/libbz2.so.1.0 (0x00007f6744e23000)\\
- \hspace{0.5cm}\alert{libpthread.so.0} => /usr/lib/libpthread.so.0 (0x00007f6745006000)\\
- \hspace{0.5cm}\alert{libm.so.6} => /usr/lib/libm.so.6 (0x00007f6745027000)\\
- \hspace{0.5cm}\alert{libc.so.6} => /usr/lib/libc.so.6 (0x00007f6744e43000)\\
- \hspace{0.5cm}libdl.so.2 => /usr/lib/libdl.so.2 (0x00007f6744e1e000)\\
- \hspace{0.5cm}librt.so.1 => /usr/lib/librt.so.1 (0x00007f6744e36000)\\
- \hspace{0.5cm}/lib64/ld-linux-x86-64.so.2 => /usr/lib64/ld-linux-x86-64.so.2 (0x00007f67463c7000)
- }
- \end{frame}
+ \newcommand{\prjdir}{\textcolor{gray}{/PROJECT}}
+ \newcommand{\lcolor}[1]{\textcolor{green!80!black}{#1}}
+ \begin{frame}{All high-level dependencies are under control (e.g., NoiseChisel's dependencies)}
+ \scriptsize
+ \begin{columns}
+ \column{8cm}
+ \begin{center} {\large \textbf{GNU/Linux distribution}} \end{center}
+
+ \texttt{\$ ldd .local/bin/astnoisechisel}\\
+ \hspace{0.5cm}\texttt{\lcolor{libgnuastro.so.7} => \textcolor{gray}{\prjdir}/libgnuastro.so.7 (0x00007f6745f39000)}\\
+ \hspace{0.5cm}\texttt{\lcolor{libgit2.so.26} => \prjdir/libgit2.so.26 (0x00007f6745df1000)}\\
+ \hspace{0.5cm}\texttt{\lcolor{libtiff.so.5} => \prjdir/libtiff.so.5 (0x00007f6745d77000)}\\
+ \hspace{0.5cm}\texttt{\lcolor{liblzma.so.5} => \prjdir/liblzma.so.5 (0x00007f6745d4f000)}\\
+ \hspace{0.5cm}\texttt{\lcolor{libjpeg.so.9} => \prjdir/libjpeg.so.9 (0x00007f6745d12000)}\\
+ \hspace{0.5cm}\texttt{\lcolor{libwcs.so.6} => \prjdir/libwcs.so.6 (0x00007f6745ba8000)}\\
+ \hspace{0.5cm}\texttt{\lcolor{libcfitsio.so.8} => \prjdir/libcfitsio.so.8 (0x00007f674588b000)}\\
+ \hspace{0.5cm}\texttt{\lcolor{libcurl.so.4} => \prjdir/libcurl.so.4 (0x00007f6745811000)}\\
+ \hspace{0.5cm}\texttt{\lcolor{libssl.so.1.1} => \prjdir/libssl.so.1.1 (0x00007f6745777000)}\\
+ \hspace{0.5cm}\texttt{\lcolor{libcrypto.so.1.1} => \prjdir/libcrypto.so.1.1 (0x00007f6745491000)}\\
+ \hspace{0.5cm}\texttt{\lcolor{libz.so.1} => \prjdir/libz.so.1 (0x00007f6745474000)}\\
+ \hspace{0.5cm}\texttt{\lcolor{libgsl.so.23} => \prjdir/libgsl.so.23 (0x00007f67451e3000)}\\
+ \hspace{0.5cm}\texttt{\lcolor{libgslcblas.so.0} => \prjdir/libgslcblas.so.0 (0x00007f67451a1000)}\\
+ \hspace{0.5cm}\texttt{\textcolor{blue}{libpthread.so.0} => /usr/lib/libpthread.so.0 (0x00007f6745006000)}\\
+ \hspace{0.5cm}\texttt{\textcolor{blue}{libm.so.6} => /usr/lib/libm.so.6 (0x00007f6745027000)}\\
+ \hspace{0.5cm}\texttt{\textcolor{blue}{libc.so.6} => /usr/lib/libc.so.6 (0x00007f6744e43000)}\\
+ \hspace{0.5cm}\texttt{\alert{libdl.so.2} => /usr/lib/libdl.so.2 (0x00007f6744e1e000)}\\
+ \hspace{0.5cm}\texttt{\alert{librt.so.1} => /usr/lib/librt.so.1 (0x00007f6744e36000)}\\
+ \hspace{0.5cm}\texttt{\alert{linux-vdso.so.1} (0x00007fffdcbf7000)}\\
+ \hspace{0.5cm}\texttt{\alert{/lib64/ld-linux-x86-64.so.2} => /usr/lib64/ld-linux-x86-64.so.2}
+
+ \column{7.5cm}
+ \begin{center} {\large \textbf{macOS}} \end{center}
+
+ \texttt{\$ otool -L .local/bin/astnoisechisel}\\
+ \hspace{0.5cm}\texttt{\prjdir/\lcolor{libgnuastro.7.dylib} (comp ver 8.0.0, cur ver 8.0.0)}\\
+ \hspace{0.5cm}\texttt{\prjdir/\lcolor{libgit2.26.dylib} (comp ver 26.0.0, cur ver 0.26.0)}\\
+ \hspace{0.5cm}\texttt{\prjdir/\lcolor{libtiff.5.dylib} (comp ver 10.0.0, cur ver 10.0.0)}\\
+ \hspace{0.5cm}\texttt{\prjdir/\lcolor{liblzma.5.dylib} (comp ver 8.0.0, cur ver 8.4.0)}\\
+ \hspace{0.5cm}\texttt{\prjdir/\lcolor{libjpeg.9.dylib} (comp ver 12.0.0, cur ver 12.0.0)}\\
+ \hspace{0.5cm}\texttt{\prjdir/\lcolor{libwcs.6.2.dylib} (comp ver 6.0.0, cur ver 6.2.0)}\\
+ \hspace{0.5cm}\texttt{\prjdir/\lcolor{libcfitsio.8.dylib} (comp ver 8.0.0, cur ver 8.3.47)}\\
+ \hspace{0.5cm}\texttt{\prjdir/\lcolor{libcurl.4.dylib} (comp ver 10.0.0, cur ver 10.0.0)}\\
+ \hspace{0.5cm}\texttt{\prjdir/\lcolor{libssl.1.1.dylib} (comp ver 1.1.0, cur ver 1.1.0)}\\
+ \hspace{0.5cm}\texttt{\prjdir/\lcolor{libcrypto.1.1.dylib} (comp ver 1.1.0, cur ver 1.1.0)}\\
+ \hspace{0.5cm}\texttt{\prjdir/\lcolor{libz.1.dylib} (comp ver 1.0.0, cur ver 1.2.11)}\\
+ \hspace{0.5cm}\texttt{\prjdir/\lcolor{libgsl.23.dylib} (comp ver 25.0.0, cur ver 25.0.0)}\\
+ \hspace{0.5cm}\texttt{\prjdir/\lcolor{libgslcblas.0.dylib} (comp ver 1.0.0, cur ver 1.0.0)}\\
+ \hspace{0.5cm}\alert{/usr/lib/libSystem.B.dylib} (comp ver 1.0.0, cur ver 1252.50.4)
+
+ \vspace{1.4cm}
+ \end{columns}
+ \vspace{2mm}
+ \begin{tcolorbox}[boxsep=0pt,left=1mm,right=1mm,top=1mm,bottom=1mm]
+ \small
- \begin{frame}{All dependencies (except C library and linker) built in project\\
- Linked libraries to NoiseChisel executable on macOS}
- \vspace{0.5cm}
- \tiny\texttt{
- \$ otool -L .local/bin/astnoisechisel\\
- \hspace{0.5cm}.local/bin/astnoisechisel:\\
- \hspace{0.5cm}\redbdir/libgnuastro.7.dylib (compatibility ver 8.0.0, current ver 8.0.0)\\
- \hspace{0.5cm}\redbdir/libgit2.26.dylib (compatibility ver 26.0.0, current ver 0.26.0)\\
- \hspace{0.5cm}\redbdir/libtiff.5.dylib (compatibility ver 10.0.0, current ver 10.0.0)\\
- \hspace{0.5cm}\redbdir/liblzma.5.dylib (compatibility ver 8.0.0, current ver 8.4.0)\\
- \hspace{0.5cm}\redbdir/libjpeg.9.dylib (compatibility ver 12.0.0, current ver 12.0.0)\\
- \hspace{0.5cm}\redbdir/libwcs.6.2.dylib (compatibility ver 6.0.0, current ver 6.2.0)\\
- \hspace{0.5cm}\redbdir/libcfitsio.8.dylib (compatibility ver 8.0.0, current ver 8.3.47)\\
- \hspace{0.5cm}\redbdir/libcurl.4.dylib (compatibility ver 10.0.0, current ver 10.0.0)\\
- \hspace{0.5cm}\redbdir/libssl.1.1.dylib (compatibility ver 1.1.0, current ver 1.1.0)\\
- \hspace{0.5cm}\redbdir/libcrypto.1.1.dylib (compatibility ver 1.1.0, current ver 1.1.0)\\
- \hspace{0.5cm}\redbdir/libz.1.dylib (compatibility ver 1.0.0, current ver 1.2.11)\\
- \hspace{0.5cm}\redbdir/libgsl.23.dylib (compatibility ver 25.0.0, current ver 25.0.0)\\
- \hspace{0.5cm}\redbdir/libgslcblas.0.dylib (compatibility ver 1.0.0, current ver 1.0.0)\\
- \hspace{0.5cm}/usr/lib/libSystem.B.dylib (compatibility ver 1.0.0, current ver 1252.50.4)
- }
+ \lcolor{Project libraries:} High-level libraries built for each
+ project.
+
+ \textcolor{blue}{GNU C Library:} Currently not installed, will be
+ available on GNU/Linux systems soon.
+
+ \alert{System/linker libraries}: Very low-level, we do
+ not need to control.
+ \end{tcolorbox}
\end{frame}
@@ -416,20 +427,21 @@
\begin{frame}{Advantages of this build system}
\begin{columns}
- \column{7cm}
+ \column{11cm}
\begin{itemize}
\setlength\itemsep{0.7cm}
\item Project runs in fixed/controlled environment: custom build
- of \alert{Bash}, GNU Coreutils (\alert{\texttt{ls}},
- \alert{\texttt{cp}}, \alert{\texttt{mkdir}} and etc),
- \alert{AWK}, or \alert{SED}, \alert{\LaTeX}, etc.
+ of \alert{Bash}, \alert{Make}, GNU Coreutils
+ (\alert{\texttt{ls}}, \alert{\texttt{cp}},
+ \alert{\texttt{mkdir}} and etc), \alert{AWK}, or \alert{SED},
+ \alert{\LaTeX}, etc.
\item No need for \alert{root}/administrator \alert{permissions}
(on servers or super computers).
\item Whole system is built \alert{automatically} on any
- Unix-like operating system (less 2 hours).
+ Unix-like operating system \\(less 2 hours).
\item Dependencies of different projects will \alert{not conflict}.
- \item (Almost) all depencies are \alert{exactly} documened and
- can be reproduced.
+ \item Everything in \alert{plain text} (human \& computer
+ readable/archivable).
\end{itemize}
\column{4cm}
\includegraphics[width=\linewidth]{img/unchained.jpg}\\
@@ -440,10 +452,12 @@
\begin{frame}{Software acknowledgment and citation automatically generated in paper}
- \includegraphics[width=\linewidth]{img/software-cite.png}
+ \centering
+ \includegraphics[width=0.8\linewidth]{img/software-cite.png}
\end{frame}
\begin{frame}{Software acknowledgment and citation automatically generated in paper}
- \includegraphics[width=\linewidth]{img/software-cite-highlighted.png}
+ \centering
+ \includegraphics[width=0.8\linewidth]{img/software-cite-highlighted.png}
\end{frame}
@@ -463,7 +477,7 @@
\begin{frame}{Input data source and integrity is documented and checked}
\small
\begin{columns}
- \column{5.5cm}
+ \column{10cm}
Stored information about each input file:
\begin{itemize}
\item \alert{PID} (where available).
@@ -471,13 +485,14 @@
\item \alert{MD5}-sum to check integrity.
\end{itemize}
- \vspace{1cm} All inputs are downloaded from the given PID/URL.
+ \vspace{1cm} All inputs are \alert{downloaded} from the given
+ PID/URL when necessary\\(during the analysis).
- \vspace{1cm} Their MD5-sum is checked to make sure the download
- was done properly or the file is the same (hasn't changed on the
- server/source).
+ \vspace{1cm} MD5-sums are \alert{checked} to make sure the
+ download was done properly or the file is the same (hasn't
+ changed on the server/source).
- \column{5.5cm}
+ \column{5cm}
\includegraphics[width=\linewidth]{img/inputs.png}
\end{columns}
\end{frame}
@@ -485,7 +500,7 @@
\begin{frame}{Input data source and integrity is documented and checked}
\small
\begin{columns}
- \column{5.5cm}
+ \column{10cm}
Stored information about each input file:
\begin{itemize}
\item \alert{PID} (where available).
@@ -493,13 +508,14 @@
\item \alert{MD5}-sum to check integrity.
\end{itemize}
- \vspace{1cm} All inputs are downloaded from the given PID/URL.
+ \vspace{1cm} All inputs are \alert{downloaded} from the given
+ PID/URL when necessary\\(during the analysis).
- \vspace{1cm} Their MD5-sum is checked to make sure the download
- was done properly or the file is the same (hasn't changed on the
- server/source).
+ \vspace{1cm} MD5-sums are \alert{checked} to make sure the
+ download was done properly or the file is the same (hasn't
+ changed on the server/source).
- \column{5.5cm}
+ \column{5cm}
\includegraphics[width=\linewidth]{img/inputs-highlighted.png}
\end{columns}
\end{frame}
@@ -513,6 +529,7 @@
+
%% Analysis
\newcommand{\focusonrun}{}
\begin{frame}{General outline of a project} \include{tex/project-graph} \end{frame}
@@ -525,14 +542,15 @@
\begin{frame}{Reproducible science: Template is managed through a Makefile}
\small
\begin{columns}
- \column{5.5cm}
+ \column{10cm}
- All steps (downloading and analysis) is managed by Makefiles
+ All steps (downloading and analysis) are managed by Makefiles\\
(example from
\textcolor{blue}{\small\href{https://doi.org/10.5281/zenodo.1164774}{zenodo.1164774}}):
+ \vspace{5mm}
\begin{itemize}
- \setlength\itemsep{0.3cm}
+ \setlength\itemsep{0.7cm}
\item Unlike a script which always starts from the top, a
Makefile \alert{starts from the end} and steps that don't
change will be left untouched (not remade).
@@ -540,7 +558,7 @@
files}.
\item Make can identify independent steps internally and do them
in \alert{parallel}.
- \item Make was \alert{designed for complex problems} with
+ \item Make was \alert{designed for complex projects} with
thousands of files (all major Unix-like components), so it is
highly evolved and efficient.
\item Make is a very \alert{simple} and \alert{small} language,
@@ -550,7 +568,7 @@
Make's manual}}).
\end{itemize}
- \column{5.5cm}
+ \column{5cm}
\includegraphics[width=\linewidth]{img/reproducible-makefile.png}
\end{columns}
\end{frame}
@@ -565,69 +583,65 @@
\begin{frame}{General outline of a project} \include{tex/project-graph} \end{frame}
\let\focusonpaper\undefined
- \begin{frame}{Values in final report/paper}
- All necessary analysis/processing \alert{input} and \alert{output}
- values are written into the final report as \LaTeX{} macros. Shown
- here is a portion of the \textsf{NoiseChisel} paper and its source
- (\textcolor{blue}{\small\href{https://arxiv.org/abs/1505.01664}{arXiv:1505.01664}}).
-
- \vspace{1.2cm}
- \includegraphics[width=\linewidth]{img/reproducible-latex.png}
+ \begin{frame}{Analysis results stored as \LaTeX{} macros}
+ Any analysis result that must be reported in the final
+ paper/report must is saved as a \LaTeX{} macro.
+ \begin{center}
+ \includegraphics[width=0.6\linewidth]{img/reproducible-write-macro.png}
+ \end{center}
\end{frame}
-
- \begin{frame}{Values in final report/paper}
- All necessary analysis/processing \alert{input} and \alert{output}
- values are written into the final report as \LaTeX{} macros. Shown
- here is a portion of the \textsf{NoiseChisel} paper and its source
- (\textcolor{blue}{\small\href{https://arxiv.org/abs/1505.01664}{arXiv:1505.01664}}).
-
- \vspace{1.2cm}
- \includegraphics[width=\linewidth]{img/reproducible-latex-highlighted.png}
+ \begin{frame}{Analysis results stored as \LaTeX{} macros}
+ Any analysis result that must be reported in the final
+ paper/report must is saved as a \LaTeX{} macro.
+ \begin{center}
+ \includegraphics[width=0.6\linewidth]{img/reproducible-write-macro-highlight.png}
+ \end{center}
\end{frame}
- \begin{frame}{Values come from a single file}
- All the \LaTeX{} macros (processing inputs and outputs) come from
- a \alert{single file}. This file is the \alert{final product} of
- the analysis steps.
+ \begin{frame}{Analysis step results/values concatenated into a single file.}
+ All analysis results are concatenated into a \alert{single file}
+ that will be included into the paper's \LaTeX{} source.
+ \begin{center}
+ \includegraphics[width=0.6\linewidth]{img/reproducible-macros.png}
+ \end{center}
+ \end{frame}
+ \begin{frame}{Analysis step results/values concatenated into a single file.}
+ All analysis results are concatenated into a \alert{single file}
+ that will be included into the paper's \LaTeX{} source.
\begin{center}
- \includegraphics[width=0.8\linewidth]{img/reproducible-macros.png}
+ \includegraphics[width=0.6\linewidth]{img/reproducible-macros-highlighted.png}
\end{center}
\end{frame}
- \begin{frame}{Values come from a single file}
- All the \LaTeX{} macros (processing inputs and outputs) come from
- a \alert{single file}. This file is the \alert{final product} of
- the analysis steps.
- \begin{center}
- \includegraphics[width=0.8\linewidth]{img/reproducible-macros-highlighted.png}
- \end{center}
- \end{frame}
+ \begin{frame}{Values in final report/paper}
+ The \LaTeX{} macros are used when writing the paper (all numbers
+ updated automatically).\\ Shown here is a portion of the
+ \textsf{NoiseChisel} paper and its source
+ (\textcolor{blue}{\small\href{https://arxiv.org/abs/1505.01664}{arXiv:1505.01664}}).
- \begin{frame}{Values written during analysis}
- Various steps of the analysis write the macro values as soon as
- they are calculated internally.
+ \vspace{1.2cm}
+ \includegraphics[width=\linewidth]{img/reproducible-latex.png}
+ \end{frame}
- \begin{center}
- \includegraphics[width=0.8\linewidth]{img/reproducible-write-macro.png}
- \end{center}
+ \begin{frame}{Values in final report/paper}
+ The \LaTeX{} macros are used when writing the paper (all numbers
+ updated automatically).\\ Shown here is a portion of the
+ \textsf{NoiseChisel} paper and its source
+ (\textcolor{blue}{\small\href{https://arxiv.org/abs/1505.01664}{arXiv:1505.01664}}).
+
+ \vspace{1.2cm}
+ \includegraphics[width=\linewidth]{img/reproducible-latex-highlighted.png}
\end{frame}
- \begin{frame}{Values written during analysis}
- Various steps of the analysis write the macro values as soon as
- they are calculated internally.
- \begin{center}
- \includegraphics[width=0.8\linewidth]{img/reproducible-write-macro-highlight.png}
- \end{center}
- \end{frame}
@@ -649,9 +663,13 @@
\begin{frame}{New projects branch from template} \include{tex/git-branch} \end{frame}
- \newcommand{\projbranch}{}
+ \newcommand{\projinit}{}
+ \begin{frame}{New projects branch from template} \include{tex/git-branch} \end{frame}
+ \newcommand{\projwork}{}
\begin{frame}{New projects branch from template} \include{tex/git-branch} \end{frame}
- \newcommand{\mergebranch}{}
+ \newcommand{\tempevolve}{}
+ \begin{frame}{New projects branch from template} \include{tex/git-branch} \end{frame}
+ \newcommand{\mergewithtemp}{}
\begin{frame}{New projects branch from template} \include{tex/git-branch} \end{frame}
\newcommand{\tofuture}{}
\begin{frame}{New projects branch from template} \include{tex/git-branch} \end{frame}
@@ -659,6 +677,9 @@
\begin{frame}{New projects branch from template} \include{tex/git-branch} \end{frame}
+
+
+
\begin{frame}{Publication of the project}
A reproducible project using this template will have the following