]> git.donarmstrong.com Git - papers/h3abionet_hackathon_aug_2016.git/blob - h3abionet_hackathon.Rnw
update h3abionet hackathon
[papers/h3abionet_hackathon_aug_2016.git] / h3abionet_hackathon.Rnw
1 \documentclass[ignorenonframetext]{beamer}
2 \usepackage{fontspec}
3 \setmainfont{FreeSerif}
4 \setsansfont{FreeSans}
5 \setmonofont{FreeMono}
6 \usepackage{url}
7 \usepackage{fancyhdr}
8 \usepackage{graphicx}
9 \usepackage[bf]{caption}
10 \usepackage{rotating}
11 \usepackage{wrapfig}
12 \usepackage{fancybox}
13 \usepackage{booktabs}
14 % \usepackage{multirow}
15 \usepackage{acronym}
16 \usepackage{qrcode}
17 \usepackage[backend=biber,natbib=true,hyperref=true,style=nature]{biblatex}
18 \addbibresource{references.bib}
19 % \usepackage[nomargin,inline,draft]{fixme}
20 % \newcommand{\DLA}[1]{\textcolor{red}{\fxnote{DLA: #1}}}
21 % \usepackage[hyperfigures,bookmarks,colorlinks,citecolor=black,filecolor=black,linkcolor=black,urlcolor=black]{hyperref}
22 \usepackage{texshade}
23 \usepackage{tikz}
24 \usepackage{nameref}
25 \usepackage{zref-xr,zref-user}
26 \renewcommand*{\bibfont}{\tiny}
27
28 % The textpos package is necessary to position textblocks at arbitary 
29 % places on the page.  Use showboxes option to show outlines of textboxes.
30 % \usepackage[absolute]{textpos}
31 \usepackage[absolute,showboxes]{textpos}
32
33 \usepackage{multirow}
34 \usepackage{array}
35
36 \mode<presentation>{ 
37   \usetheme{CambridgeUS}
38   % http://identitystandards.illinois.edu/graphicstandardsmanual/generalguidelines/colors.html
39   \definecolor{ilboldblue}{HTML}{002058}
40   \definecolor{ilboldorange}{HTML}{E87722}
41   \definecolor{ilblue}{HTML}{606EB2}
42   \definecolor{ilorange}{HTML}{D45D00}
43   \setbeamercolor{alerted text}{fg=ilboldorange}
44   \setbeamercolor*{palette primary}{fg=ilblue,bg=ilorange}
45   \setbeamercolor*{palette secondary}{fg=ilblue!20!white,bg=ilorange}
46   \setbeamercolor*{palette tertiary}{bg=ilblue,fg=ilorange}
47   \setbeamercolor*{palette quaternary}{fg=ilblue,bg=ilorange}
48   
49   \setbeamercolor*{sidebar}{fg=ilorange,bg=ilboldblue}
50   
51   \setbeamercolor*{palette sidebar primary}{fg=ilblue!10!white,bg=ilorange}
52   \setbeamercolor*{palette sidebar secondary}{fg=ilorange}
53   \setbeamercolor*{palette sidebar tertiary}{fg=ilblue}
54   \setbeamercolor*{palette sidebar quaternary}{fg=ilorange}
55   
56   % \setbeamercolor*{titlelike}{parent=palette primary}
57   \setbeamercolor{titlelike}{parent=palette primary,fg=ilboldblue,bg=ilorange}
58   \setbeamercolor{frametitle}{fg=ilboldorange,bg=ilblue!80!white}
59   \setbeamercolor{frametitle right}{fg=ilboldblue,bg=ilorange}
60   
61   \setbeamercolor*{separation line}{}
62   \setbeamercolor*{fine separation line}{}
63   \setbeamercovered{transparent}  
64   \logo{\begin{tikzpicture}% Pale figure
65       {\node[opacity=0.5]{\IfFileExists{figures/igb_wordmark.pdf}{\includegraphics[width=2cm,height=0.5cm,keepaspectratio]{figures/igb_wordmark}}{}%
66         };}%
67     \end{tikzpicture}}
68 }
69
70 \title[H3ABionet Hackathon]{H3ABionet Hackathon in Pretoria, South Africa}
71 \author{Don L. Armstrong}
72 \institute[IGB]{Institute for Genomic Biology, University of Illinois, Urbana-Champaign}
73
74 \begin{document}
75
76 \frame[plain]{\titlepage}
77
78 \section{Location}
79
80 \begin{frame}{Pretoria}
81 \includegraphics[width=\textwidth,keepaspectratio]{photos/pano.jpg}
82 \end{frame}
83
84 \begin{frame}{Bioinformatics Training Lab}
85 \includegraphics[width=\textwidth,height=0.8\textheight,keepaspectratio]{photos/IMG_0199.jpg}
86 \end{frame}
87
88 \section{Tracks}
89
90 \begin{frame}{People}
91 \includegraphics[width=\textwidth,height=0.8\textheight,keepaspectratio]{photos/IMG_0165.jpg}
92 \end{frame}
93
94 \begin{frame}{Tracks}
95 \begin{itemize}
96 \item Stream A: Illumina array (QC,calling, SNP QC)
97 \item Stream B: WGS/Exosome data (processing, QC, variant calling)
98 \item Stream C: 16S rRNA analyses, data QC, chimera detection, OTU picking
99 \item Stream D: Imputation and phasing
100 \end{itemize}
101 \end{frame}
102
103 \section{Results}
104
105 \begin{frame}{Results}
106 \begin{itemize}
107 \item CWL and Nextflow based workflows for each of the streams
108 \item Docker containers which contain all of the software required to
109   implement the workflows
110 \item scripts using nova and cloud init to bring up cloud resources
111 \end{itemize}
112 \end{frame}
113
114 \section{Technology}
115 \begin{frame}{Nextflow}
116 \begin{itemize}
117 \item Groovy-based
118 \item Can call docker to run programs
119 \item Channel infrastructure to connect different components of the
120   workflow
121 \item Language is a bit clunky and has lots of boilerplate
122 \end{itemize}
123 \end{frame}
124
125 \begin{frame}{Open Stack}
126 \begin{itemize}
127 \item Open source cloud infrastructure
128 \item Implementation at NCSA
129 \item Provision using cloud-init and nova from the command line
130 \item cloud-init is present in most Debian and Ubuntu cloud images
131 \end{itemize}
132 \end{frame}
133
134 \begin{frame}{Docker}
135 \begin{itemize}
136 \item Containers to isolate what is running from the host operating system
137 \item docker images which contain the actual code to run
138 \item Docker file which describes how to build the images
139 \end{itemize}
140 \end{frame}
141
142 \begin{frame}[fragile]{Docker file}
143 \footnotesize
144 \begin{verbatim}
145 FROM ubuntu:latest
146 MAINTAINER Don Armstrong <don@donarmstrong.com>
147 # Install wget
148 RUN apt-get update && apt-get install -y wget && \
149     apt-get clean && \
150     rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
151 RUN wget \
152  http://mathgen.stats.ox.ac.uk/impute/impute_v2.3.2_x86_64_static.tgz && \
153  tar -zxvf impute_v2.3.2_x86_64_static.tgz && \
154  mv impute_v2.3.2_x86_64_static/impute2 /usr/bin/impute2 && \
155  mkdir /opt/impute2/example -p && \
156  mv impute_v2.3.2_x86_64_static/Example/* \
157               /opt/impute2/example && \
158  rm -rf impute_v2.3.2_x86_64_static \
159  impute_v2.3.2_x86_64_static.tgz
160 \end{verbatim}
161 \end{frame}
162 \end{document}