view while42_sf.patch @ 542:4357ee3d11ed

start to work on the slides for while42sf
author Louis Opter <louis@opter.org>
date Wed, 29 Mar 2017 22:30:03 -0700
parents
children 7b1d94b70eee
line wrap: on
line source

# HG changeset patch
# Parent  72024b8586ab857434155a2f8a3f14bd9571646a
slides: add slides for a small talk at while42 sf

diff --git a/slides/fosdem_2017/CMakeLists.txt b/slides/2017-02-04_fosdem/CMakeLists.txt
rename from slides/fosdem_2017/CMakeLists.txt
rename to slides/2017-02-04_fosdem/CMakeLists.txt
--- a/slides/fosdem_2017/CMakeLists.txt
+++ b/slides/2017-02-04_fosdem/CMakeLists.txt
@@ -1,1 +1,3 @@
+LIGHTSD_COPY_COMMON_LATEX()
+
 ADD_LATEX_DOCUMENT(fosdem_2017.tex)
diff --git a/slides/fosdem_2017/fosdem_2017.pdf b/slides/2017-02-04_fosdem/fosdem_2017.pdf
rename from slides/fosdem_2017/fosdem_2017.pdf
rename to slides/2017-02-04_fosdem/fosdem_2017.pdf
diff --git a/slides/fosdem_2017/fosdem_2017.tex b/slides/2017-02-04_fosdem/fosdem_2017.tex
rename from slides/fosdem_2017/fosdem_2017.tex
rename to slides/2017-02-04_fosdem/fosdem_2017.tex
--- a/slides/fosdem_2017/fosdem_2017.tex
+++ b/slides/2017-02-04_fosdem/fosdem_2017.tex
@@ -1,41 +1,16 @@
-\documentclass[utf8x,xcolor={usenames,svgnames}]{beamer}
+\documentclass{lgtdslides}
 
 \usepackage{tikz}
 \usepackage{tikzsymbols}
-\usepackage{lmodern}
-\usepackage{arev}
-\usepackage{tgbonum}
-\usepackage{inconsolata}
-\usepackage[T1]{fontenc}
 \usepackage[american]{babel}
-\usepackage[fixlanguage]{babelbib}
 
-\useoutertheme{infolines}
-\setbeamertemplate{navigation symbols}{}
-\setbeamertemplate{bibliography item}[text]
-\setbeamerfont{footnote}{size=\tiny}
-
-\usetikzlibrary{%
-  calc,
-  decorations.pathreplacing,
-  decorations.pathmorphing,
-  shapes,
-  positioning
-}
+\usepackage{lgtdfigs}
 
 \title{Playing with the lights}
 \subtitle{\textit{Control WiFi-enabled LIFX light bulbs}}
 \date{Fosdem 2017, IoT track}
 \author{Louis Opter <louis@opter.org>}
 
-% butts:
-\tikzset{mbuttoff/.style={color=gray,rounded corners=1pt}}
-\tikzset{mbuttvlow/.style={color=orange!20!gray,rounded corners=1pt}}
-\tikzset{mbuttlow/.style={color=orange!35!gray,rounded corners=1pt}}
-\tikzset{mbuttmed/.style={color=orange!50!gray,rounded corners=1pt}}
-\tikzset{mbutthigh/.style={color=orange!80!gray,rounded corners=1pt}}
-\tikzset{mbutton/.style={fill,color=orange!95!white,rounded corners=1pt}}
-
 \tikzset{bubble/.style={fill,opacity=0.7,rounded corners=2pt}}
 \tikzset{arrow/.style={->, >=stealth,ultra thick,rounded corners}}
 \tikzset{controlpt/.style={opacity=0}}
@@ -43,17 +18,6 @@
 \tikzset{wifipath/.style={thick,opacity=0.8,decorate,decoration={name=expanding waves,angle=25,segment length=3.5}}}
 \tikzset{box/.style={draw,ultra thick, color=BeamerBlue, text=black, rectangle, rounded corners=1pt}}
 
-\tikzset{screw/.style={decoration={name=snake,amplitude=0.1mm,segment length=0.6mm}}}
-
-\colorlet{plate}{Gainsboro}
-\colorlet{case}{Sienna}
-\colorlet{fgcolor}{White}
-\definecolor{BeamerBlue}{RGB}{49,56,172}
-
-\colorlet{BodyColor}{Grey!90!black}
-\colorlet{SocketColor}{Silver!90!black}
-\colorlet{LightColor}{LightSlateBlue}
-
 \begin{document}
 
 \begin{frame}\titlepage\end{frame}
@@ -102,176 +66,14 @@
 \node[box] (monolight) at (3.5,0.75) {monolight};
 \node[box] (lightsd) at (0.5,-2) {lightsd};
 \draw[ultra thick] (-1.46, 1.5) -| (monolight);
-\node (monome) at (-3.5,1.5) {\begin{tikzpicture}[scale=0.5]
-\coordinate (NW) at (-4, 1.75);
-\coordinate (SE) at (3.86, -2.11);
-
-\fill[color=case,rounded corners=2pt] ($(NW) + (-0.18,0.18)$) rectangle ($(SE) + (0.18,-0.18)$);
-\fill[color=plate,rounded corners=2pt] ($(NW) + (-0.10,0.10)$) rectangle ($(SE) + (0.10,-0.10)$);
-
-\foreach \x in {-4,-3.5,...,3.5}
-\foreach \y in {1.75,1.25,...,-1.75}
-\fill[mbuttoff] (\x, \y) rectangle +(0.36, -0.36);
+\node (monome) at (-3.5,1.5) {\begin{tikzpicture}
+\pic (0, 0) {monome={scale 0.5}};
 \end{tikzpicture}};
-\node (bulbh) at (-4.2,-1.1) {%
-\colorlet{LightColor}{LightSlateBlue}
-\begin{tikzpicture}[scale=0.19,rotate=90]
-% main body
-\fill[color=BodyColor]
-    (-28mm,0) -- ++(0,32mm) -- ++(56mm,0) -- ++(0,-32mm) --
-    ++(-10mm,-18mm) -- ++(-36mm,0) -- cycle;
-% main body light
-\draw[line width=1.5mm,line cap=round,rounded corners=1pt,color=BodyColor!80!white]
-    (-16mm,0.5mm) .. controls (0,-0.4mm) .. (16mm,0.5mm);
-\draw[line width=2mm,rounded corners=1pt,color=BodyColor!80!white]
-    (16.5mm,32mm) -- ++(0,-32mm) -- ++(-15mm,-22mm);
-
-% led - body separator
-\fill[color=BodyColor!90!black] (-20mm,32mm) -- ++(0,2.5mm) -- ++(40mm,0) -- ++(0,-2.5mm) -- cycle;
-
-% led part
-\fill[color=LightColor]
-    (-28mm,34.5mm) -- ++(0,14mm)
-    .. controls ++(28mm,1mm) .. ++(56mm,0)
-    -- ++(0,-14mm) -- cycle;
-
-% lower body
-\fill[color=BodyColor!90!black]
-    (-14mm,-18mm) -- ++(0,-18mm) --
-    ++(2mm,-2mm) -- ++(24mm,0) -- ++(2mm,2mm)
-    -- ++(0,18mm);
-
-% socket
-\fill[color=SocketColor]
-    (-10mm,-38mm) -- ++(0,-4mm)
-    decorate[screw] {(-10mm,-42mm) -- ++(0,-10mm)}
-    -- ++(0,-0.5mm) -- ++(7.5mm,-6mm) -- ++(5mm,0) -- ++(7.5mm,6mm) -- ++(0,0.5mm)
-    decorate[screw] {(10mm,-52mm) -- ++(0,10mm)}
-    -- (10mm,-38mm) -- ++(-20mm,0) -- ++(0,-4mm) -- cycle;
-\draw[thin,color=SocketColor] (-10mm,-42mm) -- (10mm,-52mm);
-
-% socket light
-\draw[line width=1mm,line cap=round,rounded corners=1pt,color=SocketColor!90!white]
-    (4.5mm,-38mm) -- ++(0,-14mm) -- ++(-4mm,-2.5mm);
-
-% lower body light
-\draw[line width=1.8mm,color=BodyColor]
-    (5mm,-18mm) -- ++(0,-20mm);
-
-% led - body separator light
-\draw[line width=1.6mm, color=BodyColor] (16mm,32mm) -- ++(0,2.5mm);
-% led - body separator shade
-\draw[thin, color=BodyColor!80!black] (-20mm,32mm) -- ++(0,2.5mm);
-\draw[thin, color=BodyColor!80!black] (20mm,32mm) -- ++(0,2.5mm);
-
-% socket shade
-\draw[color=SocketColor!80!black]
-    (-10mm,-38mm) -- ++(0,-4mm)
-    decorate[screw] {(-10mm,-42mm) -- ++(0,-10mm)}
-    -- ++(0,-0.5mm) -- ++(7.5mm,-6mm) -- ++(5mm,0) -- ++(7.5mm,6mm) -- ++(0,0.5mm)
-    decorate[screw] {(10mm,-52mm) -- ++(0,10mm)}
-    -- (10mm,-38mm);
-\draw[color=fgcolor]
-    (-10mm,-52.5mm) -- ++(7.5mm,-6mm) -- ++(5mm,0) -- ++(7.5mm,6mm);
-\draw[rounded corners=1pt,color=SocketColor!80!black]
-    (-10mm,-52.5mm) -- ++(7.5mm,-6mm) -- ++(5mm,0) -- ++(7.5mm,6mm);
-
-% lower body shade
-\draw[rounded corners=1pt,color=BodyColor!50!black]
-    (-14mm,-18mm) -- ++(0,-18mm) --
-    ++(2mm,-2mm) -- ++(24mm,0) -- ++(2mm,2mm)
-    -- ++(0,18mm);
-
-% body shade
-\draw[thick,rounded corners=1pt,color=BodyColor!60!black]
-    (-28mm,0) -- ++(0,32mm) -- ++(56mm,0) -- ++(0,-32mm) --
-    ++(-10mm,-18mm) -- ++(-36mm,0) -- cycle;
-
-% led shade
-\draw[thick,rounded corners=1pt,color=LightColor!70!white]
-    (-28mm,34.5mm) -- ++(0,14mm)
-    .. controls ++(28mm,1mm) .. ++(56mm,0)
-    -- ++(0,-14mm) -- cycle;
+\node (bulbh) at (-4.2,-1.1) {\begin{tikzpicture}
+\pic (0, 0) {lightbulb={LightSlateBlue scale 0.19 rotate 90}};
 \end{tikzpicture}};
-\node (bulbl) at (-4.2,-2.9) {%
-\colorlet{LightColor}{IndianRed}
-\begin{tikzpicture}[scale=0.19,rotate=90]
-% main body
-\fill[color=BodyColor]
-    (-28mm,0) -- ++(0,32mm) -- ++(56mm,0) -- ++(0,-32mm) --
-    ++(-10mm,-18mm) -- ++(-36mm,0) -- cycle;
-% main body light
-\draw[line width=1.5mm,line cap=round,rounded corners=1pt,color=BodyColor!80!white]
-    (-16mm,0.5mm) .. controls (0,-0.4mm) .. (16mm,0.5mm);
-\draw[line width=2mm,rounded corners=1pt,color=BodyColor!80!white]
-    (16.5mm,32mm) -- ++(0,-32mm) -- ++(-15mm,-22mm);
-
-% led - body separator
-\fill[color=BodyColor!90!black] (-20mm,32mm) -- ++(0,2.5mm) -- ++(40mm,0) -- ++(0,-2.5mm) -- cycle;
-
-% led part
-\fill[color=LightColor]
-    (-28mm,34.5mm) -- ++(0,14mm)
-    .. controls ++(28mm,1mm) .. ++(56mm,0)
-    -- ++(0,-14mm) -- cycle;
-
-% lower body
-\fill[color=BodyColor!90!black]
-    (-14mm,-18mm) -- ++(0,-18mm) --
-    ++(2mm,-2mm) -- ++(24mm,0) -- ++(2mm,2mm)
-    -- ++(0,18mm);
-
-% socket
-\fill[color=SocketColor]
-    (-10mm,-38mm) -- ++(0,-4mm)
-    decorate[screw] {(-10mm,-42mm) -- ++(0,-10mm)}
-    -- ++(0,-0.5mm) -- ++(7.5mm,-6mm) -- ++(5mm,0) -- ++(7.5mm,6mm) -- ++(0,0.5mm)
-    decorate[screw] {(10mm,-52mm) -- ++(0,10mm)}
-    -- (10mm,-38mm) -- ++(-20mm,0) -- ++(0,-4mm) -- cycle;
-\draw[thin,color=SocketColor] (-10mm,-42mm) -- (10mm,-52mm);
-
-% socket light
-\draw[line width=1mm,line cap=round,rounded corners=1pt,color=SocketColor!90!white]
-    (4.5mm,-38mm) -- ++(0,-14mm) -- ++(-4mm,-2.5mm);
-
-% lower body light
-\draw[line width=1.8mm,color=BodyColor]
-    (5mm,-18mm) -- ++(0,-20mm);
-
-% led - body separator light
-\draw[line width=1.6mm, color=BodyColor] (16mm,32mm) -- ++(0,2.5mm);
-% led - body separator shade
-\draw[thin, color=BodyColor!80!black] (-20mm,32mm) -- ++(0,2.5mm);
-\draw[thin, color=BodyColor!80!black] (20mm,32mm) -- ++(0,2.5mm);
-
-% socket shade
-\draw[color=SocketColor!80!black]
-    (-10mm,-38mm) -- ++(0,-4mm)
-    decorate[screw] {(-10mm,-42mm) -- ++(0,-10mm)}
-    -- ++(0,-0.5mm) -- ++(7.5mm,-6mm) -- ++(5mm,0) -- ++(7.5mm,6mm) -- ++(0,0.5mm)
-    decorate[screw] {(10mm,-52mm) -- ++(0,10mm)}
-    -- (10mm,-38mm);
-\draw[color=fgcolor]
-    (-10mm,-52.5mm) -- ++(7.5mm,-6mm) -- ++(5mm,0) -- ++(7.5mm,6mm);
-\draw[rounded corners=1pt,color=SocketColor!80!black]
-    (-10mm,-52.5mm) -- ++(7.5mm,-6mm) -- ++(5mm,0) -- ++(7.5mm,6mm);
-
-% lower body shade
-\draw[rounded corners=1pt,color=BodyColor!50!black]
-    (-14mm,-18mm) -- ++(0,-18mm) --
-    ++(2mm,-2mm) -- ++(24mm,0) -- ++(2mm,2mm)
-    -- ++(0,18mm);
-
-% body shade
-\draw[thick,rounded corners=1pt,color=BodyColor!60!black]
-    (-28mm,0) -- ++(0,32mm) -- ++(56mm,0) -- ++(0,-32mm) --
-    ++(-10mm,-18mm) -- ++(-36mm,0) -- cycle;
-
-% led shade
-\draw[thick,rounded corners=1pt,color=LightColor!70!white]
-    (-28mm,34.5mm) -- ++(0,14mm)
-    .. controls ++(28mm,1mm) .. ++(56mm,0)
-    -- ++(0,-14mm) -- cycle;
+\node (bulbl) at (-4.2,-2.9) {\begin{tikzpicture}
+\pic (0, 0) {lightbulb={IndianRed scale 0.19 rotate 90}};
 \end{tikzpicture}};
 
 \draw[ultra thick] (lightsd) -| (monolight);
@@ -321,8 +123,8 @@
 \coordinate (SE) at (3.86, -2.11);
 \coordinate (b0) at (-4, 1.75);
 
-\fill[color=case,rounded corners=2pt] ($(NW) + (-0.18,0.18)$) rectangle ($(SE) + (0.18,-0.18)$);
-\fill[color=plate,rounded corners=2pt] ($(NW) + (-0.10,0.10)$) rectangle ($(SE) + (0.10,-0.10)$);
+\fill[color=MonomeCase,rounded corners=2pt] ($(NW) + (-0.18,0.18)$) rectangle ($(SE) + (0.18,-0.18)$);
+\fill[color=MonomePlate,rounded corners=2pt] ($(NW) + (-0.10,0.10)$) rectangle ($(SE) + (0.10,-0.10)$);
 
 \fill[controlpt] (NW) circle (0.1);
 \fill[controlpt] (SW) circle (0.1);
@@ -348,8 +150,8 @@
 \coordinate (b16) at (-3.82,1.07);
 \coordinate (b32) at (-3.82,0.57);
 
-\fill[color=case,rounded corners=2pt] ($(NW) + (-0.18,0.18)$) rectangle ($(SE) + (0.18,-0.18)$);
-\fill[color=plate,rounded corners=2pt] ($(NW) + (-0.10,0.10)$) rectangle ($(SE) + (0.10,-0.10)$);
+\fill[color=MonomeCase,rounded corners=2pt] ($(NW) + (-0.18,0.18)$) rectangle ($(SE) + (0.18,-0.18)$);
+\fill[color=MonomePlate,rounded corners=2pt] ($(NW) + (-0.10,0.10)$) rectangle ($(SE) + (0.10,-0.10)$);
 
 \fill[controlpt] (NW) circle (0.1);
 \fill[controlpt] (SW) circle (0.1);
@@ -434,8 +236,8 @@
 \coordinate (SE) at (3.86, -2.11);
 \coordinate (b0) at (-4, 1.75);
 
-\fill[color=case,rounded corners=2pt] ($(NW) + (-0.18,0.18)$) rectangle ($(SE) + (0.18,-0.18)$);
-\fill[color=plate,rounded corners=2pt] ($(NW) + (-0.10,0.10)$) rectangle ($(SE) + (0.10,-0.10)$);
+\fill[color=MonomeCase,rounded corners=2pt] ($(NW) + (-0.18,0.18)$) rectangle ($(SE) + (0.18,-0.18)$);
+\fill[color=MonomePlate,rounded corners=2pt] ($(NW) + (-0.10,0.10)$) rectangle ($(SE) + (0.10,-0.10)$);
 
 \foreach \x in {-4,-3.5,...,-2.5}
 \foreach \y in {1.75,1.25,...,-1.25}
@@ -551,8 +353,8 @@
 \coordinate (SE) at (3.86, -2.11);
 \coordinate (caption) at ($(NW) + (-1.155,0.65)$);
 
-\fill[color=case,rounded corners=2pt] ($(NW) + (-0.18,0.18)$) rectangle ($(SE) + (0.18,-0.18)$);
-\fill[color=plate,rounded corners=2pt] ($(NW) + (-0.10,0.10)$) rectangle ($(SE) + (0.10,-0.10)$);
+\fill[color=MonomeCase,rounded corners=2pt] ($(NW) + (-0.18,0.18)$) rectangle ($(SE) + (0.18,-0.18)$);
+\fill[color=MonomePlate,rounded corners=2pt] ($(NW) + (-0.10,0.10)$) rectangle ($(SE) + (0.10,-0.10)$);
 
 \foreach \x in {-4,-3.5,...,3.5}
 \foreach \y in {1.75,1.25,...,-1.75}
@@ -697,8 +499,8 @@
 \coordinate (NW) at (-4, 1.75);
 \coordinate (SE) at (3.86, -2.11);
 
-\fill[color=case,rounded corners=2pt] ($(NW) + (-0.18,0.18)$) rectangle ($(SE) + (0.18,-0.18)$);
-\fill[color=plate,rounded corners=2pt] ($(NW) + (-0.10,0.10)$) rectangle ($(SE) + (0.10,-0.10)$);
+\fill[color=MonomeCase,rounded corners=2pt] ($(NW) + (-0.18,0.18)$) rectangle ($(SE) + (0.18,-0.18)$);
+\fill[color=MonomePlate,rounded corners=2pt] ($(NW) + (-0.10,0.10)$) rectangle ($(SE) + (0.10,-0.10)$);
 
 \foreach \x in {-4,-3.5,...,3.5}
 \foreach \y in {1.75,1.25,...,-1.75}
@@ -708,17 +510,17 @@
 \colorlet{LightColor}{LightSlateBlue}
 \begin{tikzpicture}[scale=0.19,rotate=90]
 % main body
-\fill[color=BodyColor]
+\fill[color=LightBulbBodyColor]
     (-28mm,0) -- ++(0,32mm) -- ++(56mm,0) -- ++(0,-32mm) --
     ++(-10mm,-18mm) -- ++(-36mm,0) -- cycle;
 % main body light
-\draw[line width=1.5mm,line cap=round,rounded corners=1pt,color=BodyColor!80!white]
+\draw[line width=1.5mm,line cap=round,rounded corners=1pt,color=LightBulbBodyColor!80!white]
     (-16mm,0.5mm) .. controls (0,-0.4mm) .. (16mm,0.5mm);
-\draw[line width=2mm,rounded corners=1pt,color=BodyColor!80!white]
+\draw[line width=2mm,rounded corners=1pt,color=LightBulbBodyColor!80!white]
     (16.5mm,32mm) -- ++(0,-32mm) -- ++(-15mm,-22mm);
 
 % led - body separator
-\fill[color=BodyColor!90!black] (-20mm,32mm) -- ++(0,2.5mm) -- ++(40mm,0) -- ++(0,-2.5mm) -- cycle;
+\fill[color=LightBulbBodyColor!90!black] (-20mm,32mm) -- ++(0,2.5mm) -- ++(40mm,0) -- ++(0,-2.5mm) -- cycle;
 
 % led part
 \fill[color=LightColor]
@@ -727,36 +529,36 @@
     -- ++(0,-14mm) -- cycle;
 
 % lower body
-\fill[color=BodyColor!90!black]
+\fill[color=LightBulbBodyColor!90!black]
     (-14mm,-18mm) -- ++(0,-18mm) --
     ++(2mm,-2mm) -- ++(24mm,0) -- ++(2mm,2mm)
     -- ++(0,18mm);
 
 % socket
-\fill[color=SocketColor]
+\fill[color=LightBulbSocketColor]
     (-10mm,-38mm) -- ++(0,-4mm)
     decorate[screw] {(-10mm,-42mm) -- ++(0,-10mm)}
     -- ++(0,-0.5mm) -- ++(7.5mm,-6mm) -- ++(5mm,0) -- ++(7.5mm,6mm) -- ++(0,0.5mm)
     decorate[screw] {(10mm,-52mm) -- ++(0,10mm)}
     -- (10mm,-38mm) -- ++(-20mm,0) -- ++(0,-4mm) -- cycle;
-\draw[thin,color=SocketColor] (-10mm,-42mm) -- (10mm,-52mm);
+\draw[thin,color=LightBulbSocketColor] (-10mm,-42mm) -- (10mm,-52mm);
 
 % socket light
-\draw[line width=1mm,line cap=round,rounded corners=1pt,color=SocketColor!90!white]
+\draw[line width=1mm,line cap=round,rounded corners=1pt,color=LightBulbSocketColor!90!white]
     (4.5mm,-38mm) -- ++(0,-14mm) -- ++(-4mm,-2.5mm);
 
 % lower body light
-\draw[line width=1.8mm,color=BodyColor]
+\draw[line width=1.8mm,color=LightBulbBodyColor]
     (5mm,-18mm) -- ++(0,-20mm);
 
 % led - body separator light
-\draw[line width=1.6mm, color=BodyColor] (16mm,32mm) -- ++(0,2.5mm);
+\draw[line width=1.6mm, color=LightBulbBodyColor] (16mm,32mm) -- ++(0,2.5mm);
 % led - body separator shade
-\draw[thin, color=BodyColor!80!black] (-20mm,32mm) -- ++(0,2.5mm);
-\draw[thin, color=BodyColor!80!black] (20mm,32mm) -- ++(0,2.5mm);
+\draw[thin, color=LightBulbBodyColor!80!black] (-20mm,32mm) -- ++(0,2.5mm);
+\draw[thin, color=LightBulbBodyColor!80!black] (20mm,32mm) -- ++(0,2.5mm);
 
 % socket shade
-\draw[color=SocketColor!80!black]
+\draw[color=LightBulbSocketColor!80!black]
     (-10mm,-38mm) -- ++(0,-4mm)
     decorate[screw] {(-10mm,-42mm) -- ++(0,-10mm)}
     -- ++(0,-0.5mm) -- ++(7.5mm,-6mm) -- ++(5mm,0) -- ++(7.5mm,6mm) -- ++(0,0.5mm)
@@ -764,17 +566,17 @@
     -- (10mm,-38mm);
 \draw[color=fgcolor]
     (-10mm,-52.5mm) -- ++(7.5mm,-6mm) -- ++(5mm,0) -- ++(7.5mm,6mm);
-\draw[rounded corners=1pt,color=SocketColor!80!black]
+\draw[rounded corners=1pt,color=LightBulbSocketColor!80!black]
     (-10mm,-52.5mm) -- ++(7.5mm,-6mm) -- ++(5mm,0) -- ++(7.5mm,6mm);
 
 % lower body shade
-\draw[rounded corners=1pt,color=BodyColor!50!black]
+\draw[rounded corners=1pt,color=LightBulbBodyColor!50!black]
     (-14mm,-18mm) -- ++(0,-18mm) --
     ++(2mm,-2mm) -- ++(24mm,0) -- ++(2mm,2mm)
     -- ++(0,18mm);
 
 % body shade
-\draw[thick,rounded corners=1pt,color=BodyColor!60!black]
+\draw[thick,rounded corners=1pt,color=LightBulbBodyColor!60!black]
     (-28mm,0) -- ++(0,32mm) -- ++(56mm,0) -- ++(0,-32mm) --
     ++(-10mm,-18mm) -- ++(-36mm,0) -- cycle;
 
@@ -788,17 +590,17 @@
 \colorlet{LightColor}{IndianRed}
 \begin{tikzpicture}[scale=0.19,rotate=90]
 % main body
-\fill[color=BodyColor]
+\fill[color=LightBulbBodyColor]
     (-28mm,0) -- ++(0,32mm) -- ++(56mm,0) -- ++(0,-32mm) --
     ++(-10mm,-18mm) -- ++(-36mm,0) -- cycle;
 % main body light
-\draw[line width=1.5mm,line cap=round,rounded corners=1pt,color=BodyColor!80!white]
+\draw[line width=1.5mm,line cap=round,rounded corners=1pt,color=LightBulbBodyColor!80!white]
     (-16mm,0.5mm) .. controls (0,-0.4mm) .. (16mm,0.5mm);
-\draw[line width=2mm,rounded corners=1pt,color=BodyColor!80!white]
+\draw[line width=2mm,rounded corners=1pt,color=LightBulbBodyColor!80!white]
     (16.5mm,32mm) -- ++(0,-32mm) -- ++(-15mm,-22mm);
 
 % led - body separator
-\fill[color=BodyColor!90!black] (-20mm,32mm) -- ++(0,2.5mm) -- ++(40mm,0) -- ++(0,-2.5mm) -- cycle;
+\fill[color=LightBulbBodyColor!90!black] (-20mm,32mm) -- ++(0,2.5mm) -- ++(40mm,0) -- ++(0,-2.5mm) -- cycle;
 
 % led part
 \fill[color=LightColor]
@@ -807,36 +609,36 @@
     -- ++(0,-14mm) -- cycle;
 
 % lower body
-\fill[color=BodyColor!90!black]
+\fill[color=LightBulbBodyColor!90!black]
     (-14mm,-18mm) -- ++(0,-18mm) --
     ++(2mm,-2mm) -- ++(24mm,0) -- ++(2mm,2mm)
     -- ++(0,18mm);
 
 % socket
-\fill[color=SocketColor]
+\fill[color=LightBulbSocketColor]
     (-10mm,-38mm) -- ++(0,-4mm)
     decorate[screw] {(-10mm,-42mm) -- ++(0,-10mm)}
     -- ++(0,-0.5mm) -- ++(7.5mm,-6mm) -- ++(5mm,0) -- ++(7.5mm,6mm) -- ++(0,0.5mm)
     decorate[screw] {(10mm,-52mm) -- ++(0,10mm)}
     -- (10mm,-38mm) -- ++(-20mm,0) -- ++(0,-4mm) -- cycle;
-\draw[thin,color=SocketColor] (-10mm,-42mm) -- (10mm,-52mm);
+\draw[thin,color=LightBulbSocketColor] (-10mm,-42mm) -- (10mm,-52mm);
 
 % socket light
-\draw[line width=1mm,line cap=round,rounded corners=1pt,color=SocketColor!90!white]
+\draw[line width=1mm,line cap=round,rounded corners=1pt,color=LightBulbSocketColor!90!white]
     (4.5mm,-38mm) -- ++(0,-14mm) -- ++(-4mm,-2.5mm);
 
 % lower body light
-\draw[line width=1.8mm,color=BodyColor]
+\draw[line width=1.8mm,color=LightBulbBodyColor]
     (5mm,-18mm) -- ++(0,-20mm);
 
 % led - body separator light
-\draw[line width=1.6mm, color=BodyColor] (16mm,32mm) -- ++(0,2.5mm);
+\draw[line width=1.6mm, color=LightBulbBodyColor] (16mm,32mm) -- ++(0,2.5mm);
 % led - body separator shade
-\draw[thin, color=BodyColor!80!black] (-20mm,32mm) -- ++(0,2.5mm);
-\draw[thin, color=BodyColor!80!black] (20mm,32mm) -- ++(0,2.5mm);
+\draw[thin, color=LightBulbBodyColor!80!black] (-20mm,32mm) -- ++(0,2.5mm);
+\draw[thin, color=LightBulbBodyColor!80!black] (20mm,32mm) -- ++(0,2.5mm);
 
 % socket shade
-\draw[color=SocketColor!80!black]
+\draw[color=LightBulbSocketColor!80!black]
     (-10mm,-38mm) -- ++(0,-4mm)
     decorate[screw] {(-10mm,-42mm) -- ++(0,-10mm)}
     -- ++(0,-0.5mm) -- ++(7.5mm,-6mm) -- ++(5mm,0) -- ++(7.5mm,6mm) -- ++(0,0.5mm)
@@ -844,17 +646,17 @@
     -- (10mm,-38mm);
 \draw[color=fgcolor]
     (-10mm,-52.5mm) -- ++(7.5mm,-6mm) -- ++(5mm,0) -- ++(7.5mm,6mm);
-\draw[rounded corners=1pt,color=SocketColor!80!black]
+\draw[rounded corners=1pt,color=LightBulbSocketColor!80!black]
     (-10mm,-52.5mm) -- ++(7.5mm,-6mm) -- ++(5mm,0) -- ++(7.5mm,6mm);
 
 % lower body shade
-\draw[rounded corners=1pt,color=BodyColor!50!black]
+\draw[rounded corners=1pt,color=LightBulbBodyColor!50!black]
     (-14mm,-18mm) -- ++(0,-18mm) --
     ++(2mm,-2mm) -- ++(24mm,0) -- ++(2mm,2mm)
     -- ++(0,18mm);
 
 % body shade
-\draw[thick,rounded corners=1pt,color=BodyColor!60!black]
+\draw[thick,rounded corners=1pt,color=LightBulbBodyColor!60!black]
     (-28mm,0) -- ++(0,32mm) -- ++(56mm,0) -- ++(0,-32mm) --
     ++(-10mm,-18mm) -- ++(-36mm,0) -- cycle;
 
@@ -1055,8 +857,8 @@
 \coordinate (NW) at (-4, 1.75);
 \coordinate (SE) at (3.86, -2.11);
 
-\fill[color=case,rounded corners=2pt] ($(NW) + (-0.18,0.18)$) rectangle ($(SE) + (0.18,-0.18)$);
-\fill[color=plate,rounded corners=2pt] ($(NW) + (-0.10,0.10)$) rectangle ($(SE) + (0.10,-0.10)$);
+\fill[color=MonomeCase,rounded corners=2pt] ($(NW) + (-0.18,0.18)$) rectangle ($(SE) + (0.18,-0.18)$);
+\fill[color=MonomePlate,rounded corners=2pt] ($(NW) + (-0.10,0.10)$) rectangle ($(SE) + (0.10,-0.10)$);
 
 \foreach \x in {-4,-3.5,...,3.5}
 \foreach \y in {1.75,1.25,...,-1.75}
@@ -1068,17 +870,17 @@
 \colorlet{LightColor}{LightSlateBlue}
 \begin{tikzpicture}[scale=0.19,rotate=90]
 % main body
-\fill[color=BodyColor]
+\fill[color=LightBulbBodyColor]
     (-28mm,0) -- ++(0,32mm) -- ++(56mm,0) -- ++(0,-32mm) --
     ++(-10mm,-18mm) -- ++(-36mm,0) -- cycle;
 % main body light
-\draw[line width=1.5mm,line cap=round,rounded corners=1pt,color=BodyColor!80!white]
+\draw[line width=1.5mm,line cap=round,rounded corners=1pt,color=LightBulbBodyColor!80!white]
     (-16mm,0.5mm) .. controls (0,-0.4mm) .. (16mm,0.5mm);
-\draw[line width=2mm,rounded corners=1pt,color=BodyColor!80!white]
+\draw[line width=2mm,rounded corners=1pt,color=LightBulbBodyColor!80!white]
     (16.5mm,32mm) -- ++(0,-32mm) -- ++(-15mm,-22mm);
 
 % led - body separator
-\fill[color=BodyColor!90!black] (-20mm,32mm) -- ++(0,2.5mm) -- ++(40mm,0) -- ++(0,-2.5mm) -- cycle;
+\fill[color=LightBulbBodyColor!90!black] (-20mm,32mm) -- ++(0,2.5mm) -- ++(40mm,0) -- ++(0,-2.5mm) -- cycle;
 
 % led part
 \fill[color=LightColor]
@@ -1087,36 +889,36 @@
     -- ++(0,-14mm) -- cycle;
 
 % lower body
-\fill[color=BodyColor!90!black]
+\fill[color=LightBulbBodyColor!90!black]
     (-14mm,-18mm) -- ++(0,-18mm) --
     ++(2mm,-2mm) -- ++(24mm,0) -- ++(2mm,2mm)
     -- ++(0,18mm);
 
 % socket
-\fill[color=SocketColor]
+\fill[color=LightBulbSocketColor]
     (-10mm,-38mm) -- ++(0,-4mm)
     decorate[screw] {(-10mm,-42mm) -- ++(0,-10mm)}
     -- ++(0,-0.5mm) -- ++(7.5mm,-6mm) -- ++(5mm,0) -- ++(7.5mm,6mm) -- ++(0,0.5mm)
     decorate[screw] {(10mm,-52mm) -- ++(0,10mm)}
     -- (10mm,-38mm) -- ++(-20mm,0) -- ++(0,-4mm) -- cycle;
-\draw[thin,color=SocketColor] (-10mm,-42mm) -- (10mm,-52mm);
+\draw[thin,color=LightBulbSocketColor] (-10mm,-42mm) -- (10mm,-52mm);
 
 % socket light
-\draw[line width=1mm,line cap=round,rounded corners=1pt,color=SocketColor!90!white]
+\draw[line width=1mm,line cap=round,rounded corners=1pt,color=LightBulbSocketColor!90!white]
     (4.5mm,-38mm) -- ++(0,-14mm) -- ++(-4mm,-2.5mm);
 
 % lower body light
-\draw[line width=1.8mm,color=BodyColor]
+\draw[line width=1.8mm,color=LightBulbBodyColor]
     (5mm,-18mm) -- ++(0,-20mm);
 
 % led - body separator light
-\draw[line width=1.6mm, color=BodyColor] (16mm,32mm) -- ++(0,2.5mm);
+\draw[line width=1.6mm, color=LightBulbBodyColor] (16mm,32mm) -- ++(0,2.5mm);
 % led - body separator shade
-\draw[thin, color=BodyColor!80!black] (-20mm,32mm) -- ++(0,2.5mm);
-\draw[thin, color=BodyColor!80!black] (20mm,32mm) -- ++(0,2.5mm);
+\draw[thin, color=LightBulbBodyColor!80!black] (-20mm,32mm) -- ++(0,2.5mm);
+\draw[thin, color=LightBulbBodyColor!80!black] (20mm,32mm) -- ++(0,2.5mm);
 
 % socket shade
-\draw[color=SocketColor!80!black]
+\draw[color=LightBulbSocketColor!80!black]
     (-10mm,-38mm) -- ++(0,-4mm)
     decorate[screw] {(-10mm,-42mm) -- ++(0,-10mm)}
     -- ++(0,-0.5mm) -- ++(7.5mm,-6mm) -- ++(5mm,0) -- ++(7.5mm,6mm) -- ++(0,0.5mm)
@@ -1124,17 +926,17 @@
     -- (10mm,-38mm);
 \draw[color=fgcolor]
     (-10mm,-52.5mm) -- ++(7.5mm,-6mm) -- ++(5mm,0) -- ++(7.5mm,6mm);
-\draw[rounded corners=1pt,color=SocketColor!80!black]
+\draw[rounded corners=1pt,color=LightBulbSocketColor!80!black]
     (-10mm,-52.5mm) -- ++(7.5mm,-6mm) -- ++(5mm,0) -- ++(7.5mm,6mm);
 
 % lower body shade
-\draw[rounded corners=1pt,color=BodyColor!50!black]
+\draw[rounded corners=1pt,color=LightBulbBodyColor!50!black]
     (-14mm,-18mm) -- ++(0,-18mm) --
     ++(2mm,-2mm) -- ++(24mm,0) -- ++(2mm,2mm)
     -- ++(0,18mm);
 
 % body shade
-\draw[thick,rounded corners=1pt,color=BodyColor!60!black]
+\draw[thick,rounded corners=1pt,color=LightBulbBodyColor!60!black]
     (-28mm,0) -- ++(0,32mm) -- ++(56mm,0) -- ++(0,-32mm) --
     ++(-10mm,-18mm) -- ++(-36mm,0) -- cycle;
 
@@ -1148,17 +950,17 @@
 \colorlet{LightColor}{IndianRed}
 \begin{tikzpicture}[scale=0.19,rotate=90]
 % main body
-\fill[color=BodyColor]
+\fill[color=LightBulbBodyColor]
     (-28mm,0) -- ++(0,32mm) -- ++(56mm,0) -- ++(0,-32mm) --
     ++(-10mm,-18mm) -- ++(-36mm,0) -- cycle;
 % main body light
-\draw[line width=1.5mm,line cap=round,rounded corners=1pt,color=BodyColor!80!white]
+\draw[line width=1.5mm,line cap=round,rounded corners=1pt,color=LightBulbBodyColor!80!white]
     (-16mm,0.5mm) .. controls (0,-0.4mm) .. (16mm,0.5mm);
-\draw[line width=2mm,rounded corners=1pt,color=BodyColor!80!white]
+\draw[line width=2mm,rounded corners=1pt,color=LightBulbBodyColor!80!white]
     (16.5mm,32mm) -- ++(0,-32mm) -- ++(-15mm,-22mm);
 
 % led - body separator
-\fill[color=BodyColor!90!black] (-20mm,32mm) -- ++(0,2.5mm) -- ++(40mm,0) -- ++(0,-2.5mm) -- cycle;
+\fill[color=LightBulbBodyColor!90!black] (-20mm,32mm) -- ++(0,2.5mm) -- ++(40mm,0) -- ++(0,-2.5mm) -- cycle;
 
 % led part
 \fill[color=LightColor]
@@ -1167,36 +969,36 @@
     -- ++(0,-14mm) -- cycle;
 
 % lower body
-\fill[color=BodyColor!90!black]
+\fill[color=LightBulbBodyColor!90!black]
     (-14mm,-18mm) -- ++(0,-18mm) --
     ++(2mm,-2mm) -- ++(24mm,0) -- ++(2mm,2mm)
     -- ++(0,18mm);
 
 % socket
-\fill[color=SocketColor]
+\fill[color=LightBulbSocketColor]
     (-10mm,-38mm) -- ++(0,-4mm)
     decorate[screw] {(-10mm,-42mm) -- ++(0,-10mm)}
     -- ++(0,-0.5mm) -- ++(7.5mm,-6mm) -- ++(5mm,0) -- ++(7.5mm,6mm) -- ++(0,0.5mm)
     decorate[screw] {(10mm,-52mm) -- ++(0,10mm)}
     -- (10mm,-38mm) -- ++(-20mm,0) -- ++(0,-4mm) -- cycle;
-\draw[thin,color=SocketColor] (-10mm,-42mm) -- (10mm,-52mm);
+\draw[thin,color=LightBulbSocketColor] (-10mm,-42mm) -- (10mm,-52mm);
 
 % socket light
-\draw[line width=1mm,line cap=round,rounded corners=1pt,color=SocketColor!90!white]
+\draw[line width=1mm,line cap=round,rounded corners=1pt,color=LightBulbSocketColor!90!white]
     (4.5mm,-38mm) -- ++(0,-14mm) -- ++(-4mm,-2.5mm);
 
 % lower body light
-\draw[line width=1.8mm,color=BodyColor]
+\draw[line width=1.8mm,color=LightBulbBodyColor]
     (5mm,-18mm) -- ++(0,-20mm);
 
 % led - body separator light
-\draw[line width=1.6mm, color=BodyColor] (16mm,32mm) -- ++(0,2.5mm);
+\draw[line width=1.6mm, color=LightBulbBodyColor] (16mm,32mm) -- ++(0,2.5mm);
 % led - body separator shade
-\draw[thin, color=BodyColor!80!black] (-20mm,32mm) -- ++(0,2.5mm);
-\draw[thin, color=BodyColor!80!black] (20mm,32mm) -- ++(0,2.5mm);
+\draw[thin, color=LightBulbBodyColor!80!black] (-20mm,32mm) -- ++(0,2.5mm);
+\draw[thin, color=LightBulbBodyColor!80!black] (20mm,32mm) -- ++(0,2.5mm);
 
 % socket shade
-\draw[color=SocketColor!80!black]
+\draw[color=LightBulbSocketColor!80!black]
     (-10mm,-38mm) -- ++(0,-4mm)
     decorate[screw] {(-10mm,-42mm) -- ++(0,-10mm)}
     -- ++(0,-0.5mm) -- ++(7.5mm,-6mm) -- ++(5mm,0) -- ++(7.5mm,6mm) -- ++(0,0.5mm)
@@ -1204,17 +1006,17 @@
     -- (10mm,-38mm);
 \draw[color=fgcolor]
     (-10mm,-52.5mm) -- ++(7.5mm,-6mm) -- ++(5mm,0) -- ++(7.5mm,6mm);
-\draw[rounded corners=1pt,color=SocketColor!80!black]
+\draw[rounded corners=1pt,color=LightBulbSocketColor!80!black]
     (-10mm,-52.5mm) -- ++(7.5mm,-6mm) -- ++(5mm,0) -- ++(7.5mm,6mm);
 
 % lower body shade
-\draw[rounded corners=1pt,color=BodyColor!50!black]
+\draw[rounded corners=1pt,color=LightBulbBodyColor!50!black]
     (-14mm,-18mm) -- ++(0,-18mm) --
     ++(2mm,-2mm) -- ++(24mm,0) -- ++(2mm,2mm)
     -- ++(0,18mm);
 
 % body shade
-\draw[thick,rounded corners=1pt,color=BodyColor!60!black]
+\draw[thick,rounded corners=1pt,color=LightBulbBodyColor!60!black]
     (-28mm,0) -- ++(0,32mm) -- ++(56mm,0) -- ++(0,-32mm) --
     ++(-10mm,-18mm) -- ++(-36mm,0) -- cycle;
 
diff --git a/slides/fosdem_2017/lightsd-demo.sh b/slides/2017-02-04_fosdem/lightsd-demo.sh
rename from slides/fosdem_2017/lightsd-demo.sh
rename to slides/2017-02-04_fosdem/lightsd-demo.sh
diff --git a/slides/fosdem_2017/monolight-demo.sh b/slides/2017-02-04_fosdem/monolight-demo.sh
rename from slides/fosdem_2017/monolight-demo.sh
rename to slides/2017-02-04_fosdem/monolight-demo.sh
diff --git a/slides/2017-04-XX_while_42/CMakeLists.txt b/slides/2017-04-XX_while_42/CMakeLists.txt
new file mode 100644
--- /dev/null
+++ b/slides/2017-04-XX_while_42/CMakeLists.txt
@@ -0,0 +1,3 @@
+LIGHTSD_COPY_COMMON_LATEX()
+
+ADD_LATEX_DOCUMENT(while42.tex)
diff --git a/slides/2017-04-XX_while_42/while42.tex b/slides/2017-04-XX_while_42/while42.tex
new file mode 100644
--- /dev/null
+++ b/slides/2017-04-XX_while_42/while42.tex
@@ -0,0 +1,49 @@
+\documentclass{lgtdslides}
+
+\usepackage{tikz}
+\usepackage{tikzsymbols}
+\usepackage[francais]{babel}
+
+\usepackage{lgtdfigs}
+
+\title{Un titre}
+\subtitle{\textit{Un sous-titre}}
+\date{While 42 SF, side projects}
+\author{Louis Opter <louis@opter.org>}
+
+\begin{document}
+
+\begin{frame}\titlepage\end{frame}
+
+\begin{frame}{Un Test}
+\begin{center}
+\begin{tikzpicture}[overlay]
+\pic (0,0) {monome={scale 1}};
+\pic (0,0) {lightbulb={LightSlateBlue scale 0.19 rotate 90}};
+\end{tikzpicture}
+\end{center}
+\end{frame}
+
+\begin{frame}{Table des modèles LIFX}
+\begin{tabular}{lll}
+\textbf{Génération} & \textbf{Modèle} & \textbf{En vente} \\
+\hline
+Gen 1 & Original 1000, Color 650 & Non \\
+\hline
+Gen 2 & Color 1000, White 800 & Oui \\
+\hline
+Gen 3 & A19, BR30, Z (ruban) & Oui \\
+\end{tabular}
+\par\vspace{2em}
+\begin{tabular}{ll}
+\textbf{Génération} & \textbf{Notes} \\
+\hline
+Gen 1 & Supporte 802.11 et 802.15.4 (inutilisé) \\
+\hline
+Gen 2 & QCA 4002, AllJoyn, \emph{plante} \\
+\hline
+Gen 3 & + versions have IR, \emph{plante toujours} \\
+\end{tabular}
+\end{frame}
+
+\end{document}
diff --git a/slides/CMakeLists.txt b/slides/CMakeLists.txt
--- a/slides/CMakeLists.txt
+++ b/slides/CMakeLists.txt
@@ -1,1 +1,15 @@
+FUNCTION(LIGHTSD_COPY_COMMON_LATEX)
+    SET(
+        SOURCES
+        common/lgtdfigs.sty
+        common/lgtdslides.cls
+    )
+    FOREACH(F ${SOURCES})
+        FILE(
+            COPY ${PROJECT_SOURCE_DIR}/slides/${F}
+            DESTINATION ${CMAKE_CURRENT_BINARY_DIR}
+        )
+    ENDFOREACH()
+ENDFUNCTION()
+
 ADD_ALL_SUBDIRECTORIES()
diff --git a/slides/common/lgtdfigs.sty b/slides/common/lgtdfigs.sty
new file mode 100644
--- /dev/null
+++ b/slides/common/lgtdfigs.sty
@@ -0,0 +1,138 @@
+\ProvidesPackage{lgtdfigs}
+
+\usetikzlibrary{%
+  calc,
+  decorations.pathreplacing,
+  decorations.pathmorphing,
+  shapes,
+  positioning
+}
+
+%%% LIFX inspired light bulb
+
+\colorlet{LightBulbBodyColor}{Grey!90!black}
+\colorlet{LightBulbSocketColor}{Silver!90!black}
+
+\tikzset{screw/.style={decoration={
+    name=snake,amplitude=0.1mm,segment length=0.6mm
+}}}
+
+\tikzset{pics/lightbulb/.style args={#1 scale #2 rotate #3}{code={% arg1 is light color
+
+\tikzset{screw/.style={decoration={
+    name=snake,amplitude=0.1mm,segment length=0.6mm
+}}}
+
+\begin{scope}[scale=#2,rotate=#3]
+
+% main body
+\fill[color=LightBulbBodyColor]
+    (-28mm,0) -- ++(0,32mm) -- ++(56mm,0) -- ++(0,-32mm) --
+    ++(-10mm,-18mm) -- ++(-36mm,0) -- cycle;
+
+% main body light
+\draw[line width=1.5mm,line cap=round,rounded corners=1pt,color=LightBulbBodyColor!80!white]
+    (-16mm,0.5mm) .. controls (0,-0.4mm) .. (16mm,0.5mm);
+\draw[line width=2mm,rounded corners=1pt,color=LightBulbBodyColor!80!white]
+    (16.5mm,32mm) -- ++(0,-32mm) -- ++(-15mm,-22mm);
+
+% led - body separator
+\fill[color=LightBulbBodyColor!90!black]
+    (-20mm,32mm) -- ++(0,2.5mm) -- ++(40mm,0) -- ++(0,-2.5mm) -- cycle;
+
+% led part
+\fill[color=#1]
+    (-28mm,34.5mm) -- ++(0,14mm)
+    .. controls ++(28mm,1mm) .. ++(56mm,0)
+    -- ++(0,-14mm) -- cycle;
+
+% lower body
+\fill[color=LightBulbBodyColor!90!black]
+    (-14mm,-18mm) -- ++(0,-18mm) --
+    ++(2mm,-2mm) -- ++(24mm,0) -- ++(2mm,2mm)
+    -- ++(0,18mm);
+
+% socket
+\fill[color=LightBulbSocketColor]
+    (-10mm,-38mm) -- ++(0,-4mm)
+    decorate[screw] {(-10mm,-42mm) -- ++(0,-10mm)}
+    -- ++(0,-0.5mm) -- ++(7.5mm,-6mm) -- ++(5mm,0) -- ++(7.5mm,6mm) -- ++(0,0.5mm)
+    decorate[screw] {(10mm,-52mm) -- ++(0,10mm)}
+    -- (10mm,-38mm) -- ++(-20mm,0) -- ++(0,-4mm) -- cycle;
+\draw[thin,color=LightBulbSocketColor] (-10mm,-42mm) -- (10mm,-52mm);
+
+% socket light
+\draw[line width=1mm,line cap=round,rounded corners=1pt,color=LightBulbSocketColor!90!white]
+    (4.5mm,-38mm) -- ++(0,-14mm) -- ++(-4mm,-2.5mm);
+
+% lower body light
+\draw[line width=1.8mm,color=LightBulbBodyColor]
+    (5mm,-18mm) -- ++(0,-20mm);
+
+% led - body separator light
+\draw[line width=1.6mm, color=LightBulbBodyColor] (16mm,32mm) -- ++(0,2.5mm);
+% led - body separator shade
+\draw[thin, color=LightBulbBodyColor!80!black] (-20mm,32mm) -- ++(0,2.5mm);
+\draw[thin, color=LightBulbBodyColor!80!black] (20mm,32mm) -- ++(0,2.5mm);
+
+% socket shade
+\draw[color=LightBulbSocketColor!80!black]
+    (-10mm,-38mm) -- ++(0,-4mm)
+    decorate[screw] {(-10mm,-42mm) -- ++(0,-10mm)}
+    -- ++(0,-0.5mm) -- ++(7.5mm,-6mm) -- ++(5mm,0) -- ++(7.5mm,6mm) -- ++(0,0.5mm)
+    decorate[screw] {(10mm,-52mm) -- ++(0,10mm)}
+    -- (10mm,-38mm);
+\draw[color=fgcolor]
+    (-10mm,-52.5mm) -- ++(7.5mm,-6mm) -- ++(5mm,0) -- ++(7.5mm,6mm);
+\draw[rounded corners=1pt,color=LightBulbSocketColor!80!black]
+    (-10mm,-52.5mm) -- ++(7.5mm,-6mm) -- ++(5mm,0) -- ++(7.5mm,6mm);
+
+% lower body shade
+\draw[rounded corners=1pt,color=LightBulbBodyColor!50!black]
+    (-14mm,-18mm) -- ++(0,-18mm) --
+    ++(2mm,-2mm) -- ++(24mm,0) -- ++(2mm,2mm)
+    -- ++(0,18mm);
+
+% body shade
+\draw[thick,rounded corners=1pt,color=LightBulbBodyColor!60!black]
+    (-28mm,0) -- ++(0,32mm) -- ++(56mm,0) -- ++(0,-32mm) --
+    ++(-10mm,-18mm) -- ++(-36mm,0) -- cycle;
+
+% led shade
+\draw[thick,rounded corners=1pt,color=#1!70!white]
+    (-28mm,34.5mm) -- ++(0,14mm)
+    .. controls ++(28mm,1mm) .. ++(56mm,0)
+    -- ++(0,-14mm) -- cycle;
+
+\end{scope}
+}}}
+
+%%% Monome inspired grid
+
+\colorlet{MonomePlate}{Gainsboro}
+\colorlet{MonomeCase}{Sienna}
+
+\tikzset{mbuttoff/.style={color=gray,rounded corners=1pt}}
+\tikzset{mbuttvlow/.style={color=orange!20!gray,rounded corners=1pt}}
+\tikzset{mbuttlow/.style={color=orange!35!gray,rounded corners=1pt}}
+\tikzset{mbuttmed/.style={color=orange!50!gray,rounded corners=1pt}}
+\tikzset{mbutthigh/.style={color=orange!80!gray,rounded corners=1pt}}
+\tikzset{mbutton/.style={fill,color=orange!95!white,rounded corners=1pt}}
+
+\tikzset{pics/monome/.style args={scale #1}{code={%
+
+\begin{scope}[scale=#1]
+\coordinate (NW) at (-4, 1.75);
+\coordinate (SE) at (3.86, -2.11);
+
+\fill[color=MonomeCase,rounded corners=2pt] ($(NW) + (-0.18,0.18)$) rectangle ($(SE) + (0.18,-0.18)$);
+\fill[color=MonomePlate,rounded corners=2pt] ($(NW) + (-0.10,0.10)$) rectangle ($(SE) + (0.10,-0.10)$);
+
+\foreach \x in {-4,-3.5,...,3.5}{
+    \foreach \y in {1.75,1.25,...,-1.75}{
+        \fill[mbuttoff] (\x, \y) rectangle +(0.36, -0.36);
+    }
+}
+
+\end{scope}
+}}}
diff --git a/slides/common/lgtdslides.cls b/slides/common/lgtdslides.cls
new file mode 100644
--- /dev/null
+++ b/slides/common/lgtdslides.cls
@@ -0,0 +1,18 @@
+\ProvidesClass{lgtdslides}
+
+\LoadClass[utf8x,xcolor={usenames,svgnames}]{beamer}
+
+\RequirePackage{lmodern}
+\RequirePackage{arev}
+\RequirePackage{tgbonum}
+\RequirePackage{inconsolata}
+\RequirePackage[T1]{fontenc}
+\RequirePackage[fixlanguage]{babelbib}
+
+\useoutertheme{infolines}
+\setbeamertemplate{navigation symbols}{}
+\setbeamertemplate{bibliography item}[text]
+\setbeamerfont{footnote}{size=\tiny}
+
+\colorlet{fgcolor}{White}
+\definecolor{BeamerBlue}{RGB}{49,56,172}