]> git.donarmstrong.com Git - debbugs-presentations.git/blobdiff - debbugs.Rnw
plot bugs from the beginning of time and remove negative trends
[debbugs-presentations.git] / debbugs.Rnw
index 7d059c7fcfc515f81c8d2670cb967cf297182c07..4131fcfc7c816a3c97865b933c5c38f6e7fae558 100644 (file)
@@ -1,3 +1,36 @@
+
+\usepackage{fontspec}
+\setmainfont{FreeSerif}
+\setsansfont{FreeSans}
+\setmonofont{FreeMono}
+\usepackage{url}
+\usepackage{fancyhdr}
+\usepackage{graphicx}
+\usepackage[bf]{caption}
+\usepackage{rotating}
+\usepackage{wrapfig}
+\usepackage{fancybox}
+\usepackage{booktabs}
+\usepackage{minted}
+\usepackage{tcolorbox}
+\usepackage{etoolbox}
+\BeforeBeginEnvironment{minted}{\begin{tcolorbox}}%
+\AfterEndEnvironment{minted}{\end{tcolorbox}}%
+% \usepackage{multirow}
+\usepackage{acronym}
+\usepackage{qrcode}
+\usepackage[backend=biber,natbib=true,hyperref=true,style=nature]{biblatex}
+\addbibresource{references.bib}
+% \usepackage[nomargin,inline,draft]{fixme}
+% \newcommand{\DLA}[1]{\textcolor{red}{\fxnote{DLA: #1}}}
+% \usepackage[hyperfigures,bookmarks,colorlinks,citecolor=black,filecolor=black,linkcolor=black,urlcolor=black]{hyperref}
+\usepackage{texshade}
+\usepackage{tikz}
+\usepackage{nameref}
+\usepackage{zref-xr,zref-user}
+\renewcommand*{\bibfont}{\tiny}
+\usepackage[absolute,overlay]{textpos}
+
 \mode<presentation>
 {
   \usetheme{Montpellier}
 %  \setbeamercovered{transparent}  
 }
 
-
-\usepackage[no-math]{fontspec}
-\setmainfont[ExternalLocation, 
-             Mapping=tex-text,
-             BoldFont=FreeSerifBold,
-             ItalicFont=FreeSerifItalic,
-             BoldItalicFont=FreeSerifBoldItalic]{FreeSerif}
-\setsansfont[ExternalLocation, 
-             Mapping=tex-text,
-             BoldFont=FreeSerifBold,
-             ItalicFont=FreeSerifItalic,
-             BoldItalicFont=FreeSerifBoldItalic,
-             Scale=MatchLowercase]{FreeSerif}
-\setmonofont{FreeMono}
-
-\usepackage{booktabs}
-\usepackage{multirow}
-\usepackage{setspace}
-\usepackage[backend=biber,natbib=true,hyperref=true,style=numeric-comp]{biblatex}
-\bibliography{references}
-% \usepackage[hyperfigures,bookmarks,colorlinks]{hyperref}
-
+\setbeamertemplate{navigation symbols}{}%remove navigation symbols
 
 \usepackage[nomargin,inline,draft]{fixme}
-%\usepackage[x11names,svgnames]{xcolor}
-\usepackage{texshade}
-\usepackage[absolute,overlay]{textpos}
-\usepackage{tikz}
-\usepackage{nameref}
-\usepackage{ulem}
-\usepackage{zref-xr,zref-user}
 \usepackage{listings}
 
-\newenvironment{narrow}[2]{%
-  \begin{list}{}{%
-      \setlength{\topsep}{0pt}%
-      \setlength{\leftmargin}{#1}%
-      \setlength{\rightmargin}{#2}%
-      \setlength{\listparindent}{\parindent}%
-      \setlength{\itemindent}{\parindent}%
-      \setlength{\parsep}{\parskip}}%
-  \item[]}{\end{list}}
-\def\newblock{\hskip}
-\newenvironment{paperquote}{%
-  \begin{quote}%
-     \it
-  }%
-  {\end{quote}}
-\renewcommand{\textfraction}{0.15}
-\renewcommand{\topfraction}{0.85}
-\renewcommand{\bottomfraction}{0.65}
-\renewcommand{\floatpagefraction}{0.60}
-%\renewcommand{\baselinestretch}{1.8}
-\newenvironment{enumerate*}%
-  {\begin{enumerate}%
-    \setlength{\itemsep}{0pt}%
-    \setlength{\parskip}{0pt}}%
-  {\end{enumerate}}
-\newenvironment{itemize*}%
-  {\begin{itemize}%
-    \setlength{\itemsep}{0pt}%
-    \setlength{\parskip}{0pt}}%
-  {\end{itemize}}
 
 \logo{\begin{tikzpicture}% Pale figure
     {\node[opacity=0.3] {\includegraphics[width=2cm,keepaspectratio]{figures/openlogo-crop.pdf}};}%
     \end{tikzpicture}}
 \author{Don Armstrong}
 \title{Debbugs}
-\subtitle{Database Ho!}
-%\date{August 11th, 2008}
-\titlegraphic{\includegraphics[height=0.3\textheight,keepaspectratio]{figures/openlogo-crop.pdf}}
+\subtitle{22 Years of Bugs}
+\date{August 10th, 2017}
+\titlegraphic{\includegraphics[height=0.2\textheight,keepaspectratio]{figures/openlogo-crop.pdf}}
 \subject{BTS}
 
 % State of the BTS: new features, changes and tips
 %    - release to experimental
 
 
-<<load.libraries,echo=FALSE,results="hide",error=FALSE,message=FALSE>>=
+<<load.libraries,echo=FALSE,results="hide",error=FALSE,message=FALSE,cache=FALSE>>=
 library(lattice)
 library(xtable)
 library(ggplot2)
 library("scales")
 library(reshape2)
 library("data.table")
-opts_chunk$set(dev="cairo_pdf",out.width="\\textwidth",out.height="0.8\\textheight",out.extra="keepaspectratio",fig.width=6,fig.height=4)
+opts_chunk$set(dev="cairo_pdf",out.width="\\textwidth",out.height="0.8\\textheight",out.extra="keepaspectratio",fig.width=6/1.2,fig.height=4/1.2)
 opts_chunk$set(cache=TRUE, autodep=TRUE)
-options(device = function(file, width = 6, height = 4, ...) {
+options(device = function(file, width = 6/1.2, height = 4/1.2, ...) {
   cairo_pdf(tempfile(), width = width, height = height, ...)
 })
 
@@ -130,7 +105,10 @@ scientific_10 <- function(x) {
 %\setbeamercolor{frametitle}[bg=-red!90!green!10,fg=black]
 
 \frame[plain]{\titlepage
-  Source available at \url{http://git.donarmstrong.com/debbugs-presentations.git}
+  Code and slides are here: 
+  \qrcode[padding]{https://dla2.us/p/debbugs2017}
+  \url{https://dla2.us/p/debbugs2017}
+
 }
 
 % \begin{frame}{Debbugs}
@@ -144,8 +122,7 @@ scientific_10 <- function(x) {
   \begin{columns}
     \column{0.5\textwidth}
     \begin{itemize}
-    \item Bug Statitics
-    \item Introduction to Debbugs
+    \item Bug Statistics
     \item New features
     \item Planned features
     \item Places you can help
@@ -170,25 +147,46 @@ scientific_10 <- function(x) {
 
 \section{Bugs in Debian}
 \subsection{Bug Reporting Rate}
-\begin{frame}{How many bugs do we have?}
+\begin{frame}{Bugs from the beginning of time}
   \begin{center}
 <<bug.growth,fig=TRUE,echo=FALSE,cache.extra=file.info("data/sorted_bug_growth_for_r_every_500.txt")[,"mtime"]>>=
 bug.growth <- fread("data/sorted_bug_growth_for_r_every_500.txt")
 colnames(bug.growth) <- c("time","bugs")
 bug.growth <- bug.growth[pmax(bugs) <= as.numeric(bugs),]
+bug.growth <- bug.growth[order(time),]
+while (bug.growth[,any(c(0,diff(bugs)) < 0)]) {
+       bug.growth <-
+           bug.growth[c(0,diff(bugs))>=0,]
+}
 bug.growth[,date:=
                 as.POSIXct(ISOdatetime(1970,1,1,0,0,0)+
                            as.numeric(bug.growth$time))]
-print(ggplot(bug.growth[date > as.POSIXct(ISOdatetime(2005,1,1,0,0,0)),],
+bug.growth[,`bugs per day`:=c(0,diff(bugs)/
+                                as.double(diff(date),"days"))
+           ]
+print(ggplot(bug.growth,#[date > as.POSIXct(ISOdatetime(2005,1,1,0,0,0)),],
              aes(x=date,y=bugs))+
       xlab("Time")+ylab("Bugs filed in Debian")+
       scale_y_continuous(labels = scientific_10)+
-      geom_point()+stat_smooth(method="lm"))
+      geom_point())
 @ 
 \end{center}
 \end{frame}
 
-\begin{frame}
+\begin{frame}{Bug Growth Rate}
+<<bug_growth_rate,echo=FALSE>>=
+print(ggplot(bug.growth[date > as.POSIXct(ISOdatetime(2014,1,1,0,0,0)),],
+             aes(x=date,y=`bugs per day`))+
+      xlab("Time")+ylab("Bugs filed per day")
+      + scale_y_log10(breaks=c(60,100,200,400,800))
+      + geom_line()+stat_smooth(method="lm")
+      + geom_label(data=data.table(date=as.POSIXct(ISOdatetime(2015,04,25,0,0,0)),"bugs per day"=400),label="Jessie",color="red")
+      + geom_label(data=data.table(date=as.POSIXct(ISOdatetime(2017,06,17,0,0,0)),"bugs per day"=400),label="Stretch",color="purple")
+      )
+@ 
+\end{frame}
+
+\begin{frame}{My entries into Cristian's game}
   \begin{columns}
     \column{0.5\textwidth}
   \begin{center}
@@ -344,15 +342,15 @@ print(ggplot(rc.bugs.long[date >
   % SQL loading
   \begin{itemize}
   \item Load bugs
-\begin{lstlisting}[language=sh]
+\begin{minted}{sh}
 debbugs-loadsql bugs;
 debbugs-loadsql bugs archive;
-\end{lstlisting}
+\end{minted}
   \item Load Versioning information
-\begin{lstlisting}[language=sh]
+\begin{minted}{sh}
 debbugs-loadsql versions;
 debbugs-loadsql debinfo;
-\end{lstlisting}
+\end{minted}
   \end{itemize}
 \end{frame}