\documentclass{beamer}
\usepackage{xcolor}
\definecolor{primary}{rgb}{0.125, 0.424, 0.243}

\usepackage[default]{opensans}

\usepackage{graphicx}
\usepackage{textcomp}

\title{Blocktree}
\subtitle{A platform for distributed computing.}
\author{Matt Carr \\ matt@carrfound.org}

\begin{document}

\frame{\titlepage}

\begin{frame}
\frametitle{Problem}
Distributed systems are hard.
\begin{itemize}
\item<2-> High performance messaging is often outsourced (RabbitMQ, Amazon SQS).
\item<3-> Scaling stateful systems continues to be a challenge.
\item<4-> The speed of light is a fundamental limit on latency which forces us to move data closer
  to the user.
\end{itemize}
\end{frame}

\begin{frame}{}
\frametitle{Proposed Solution}
Reduce latency and the scope of the problem by moving data onto a user's own devices.
\begin{itemize}
\item<2-> Create a high performance message passing API. Zero copy locally, with transparent
forwarding over the network.
\item<3-> Create an end-to-end encrypted distributed file system which is served by a user's
    devices.
\item<4-> Allow user's to securely share files using cryptographic mechanisms.
\item<5-> Allow a WebAssembly runtime and native containers to access this API.
\end{itemize}
\end{frame}

\begin{frame}
\frametitle{User Value Proposition}
There are many reasons why user's might prefer this to the status quo.
\begin{itemize}
\item<2-> Control over personal data.
\item<3-> Privacy provided by cryptography, not legislation.
\item<4-> Freedom from manipulative advertising.
\end{itemize}
\end{frame}

\begin{frame}
\frametitle{The Core Idea}
\begin{itemize}
\item<2-> All data and running programs are identified by paths in a single global namespace.
\begin{center}
\scriptsize{/0!dSip4J0kurN5VhVo\_aTipM-ywOOWrqJuRRVQ7aa-bew/docs/otf\_app.ods}
\end{center}
\item<3-> The first component of the path specifies a signing key which is the root of trust for
  for all paths under it.
\item<4-> Messages are only trusted if they're signed by a key which is
  transitively trusted by the root.
\item<5-> Anyone can verify a file by checking the digital signature it bears is transitively
  trusted.
\end{itemize}
\end{frame}

\begin{frame}
\frametitle{OSS Alternatives} 
There are many other decentralized systems out there. Blocktree is different in several ways.
\begin{itemize}
\item<2-> It avoids the scaling issues of blockchains by limiting the scope of consensus (Etherium).
\item<3-> It offers mutable storage, which is what real-world applications need. This is difficult
  with content addressing systems (IPFS, WNFS).
\item<4-> Approaches which standardize the format of user data (Solid Pods) fail to address the
  question of who will store it.
\end{itemize}
\end{frame}

\begin{frame}
\frametitle{Current Status and Use of Funds} 
\begin{itemize}
\item<3-> The metadata handling, encryption, and integrity protection mechanisms have been
  implemented.
\item<4-> Support for securely using keys in a TPM is supported.
\item<5-> A FUSE daemon which allows the file system to be mounted under Linux has been written.
\item<6-> Funds from the OTF would allow me to continue working on the project full-time and allow
  me to hire additional developers.
\end{itemize}
\end{frame}

\end{document}
