\begin{frame}
\frametitle{Problems with IoT}
- \begin{itemize}
+ \begin{itemize}[<+->]
\item Device $\rightarrow$ Server $\rightarrow$ Application
- \pause{}
\item Myriads of devices: Arduino, ESP8266, Raspberry pi\ldots
- \pause{}
\item Tons of languages: C++, Lua, C, python\ldots
- \pause{}
\item Heaps of communication methods: LoRa (Sigfox, KPN, TTN), BTLE, WiFi, ZigBee\ldots
- \pause{}
+ \item Resulting in
\item Separated logic
+
\item Integration problems
\end{itemize}
\end{frame}
\item EDSL in Clean
\end{itemize}
\end{block}
- \pause{}
\begin{block}{Tasks}
\begin{itemize}[<+->]
\item Filling in forms
\begin{itemize}
\item iTasks works
\item IoT works
- \item But...\pause{} integration does not
+ \item But\ldots\pause{} integration does not
\end{itemize}
\end{block}
\begin{block}{Why is this interesting?}
\begin{itemize}[<+->]
- \item Make IoT integration easier
+ \item Makes IoT integration easier
+ \item Safer IoT clients
\item Extend the reach of iTasks
- \item Fully integrated systems
+ \item Generate all three components of IoT from one source
\end{itemize}
\end{block}
\end{frame}
\item Observables
\item Given the state, a \CI{TaskValue} is observed.
\item Continuous execution
- \item Generics
\end{itemize}
\end{block}
\pause{}
\begin{figure}[ht]
\centering
- \includegraphics[width=\linewidth]{fig-taskvalue}
+ \includegraphics[width=.6\linewidth]{fig-taskvalue}
\caption{The states of a \CI{TaskValue}}
\end{figure}
\end{frame}
\begin{frame}[fragile]
\frametitle{Shared Data Sources (SDS)}
\begin{block}{What is an SDS}
- \begin{itemize}[<+->]
+ \begin{itemize}
\item Read function
\item Write function
+ \pause{}
\item Both have access to the world
+ \item Default: JSON file storage
\end{itemize}
\end{block}
\end{frame}
\begin{frame}
- \frametitle{But not all Tasks or SDSs are suitable for microcontrollers\ldots}
- \pause\centering\Large EDSLs to the rescue
+ \frametitle{How to express Tasks suitable for microcontrollers}
+ \pause\centering\Huge EDSLs to the rescue
\end{frame}