Category Archives: Teaching

YAVW

As part of the exercises for my 50.020 Security class, we needed a simple setup to test XSS, SQL injection, and command injection attacks. Instead of using solutions such as the standard OWASP webserver, this year I decided to write my own minimal application  (using Python/Flask) which I called YAVW.  Using Flask resulted in a very small codebase, which should be easier to understand for students. In case this is useful for others, I made it public here.

MSSD Program at SUTD

I am involved in designing SUTD’s upcoming Masters’ in Security by Design (MSSD) Program. This will be ISTD’s first Masters’ program, the start is scheduled to be in September 2017. Applications can be submitted now on our website linked above. About the program:

The MSSD programme is one-of-a-kind in that it focuses on bringing cybersecurity at the design stage of critical infrastructure and enterprise networks. This focus enables the training of a special type of engineer who can not only contribute to the security of organizations that do online business, but also to the security of large scale public infrastructures such as power grid, water treatment and distribution, transportation, and oil and natural gas processing.

More information can be found here.

Writing Presentations in Org-mode Markup

For two years now, I am almost exclusively using the toolchain of org-mode+emacs+beamer+pdflatex to prepare my presentations for conferences and lectures. In this post, I want to share the basic setup to quickly reproduce for others. Disclaimer: If you have never used Emacs, then this method might not be very interesting for you.

Install

Install the org-mode for Emacs using ELPA. Make sure the mode is loaded when opening an .org file. Currently, I am using Emacs 24.5.1 (Org mode 8.2.7b).

Minimal Example

Create a test.org file in Emacs:

#+startup: beamer
#+LaTeX_CLASS: beamer
#+LaTeX_CLASS_OPTIONS: [presentation, aspectratio=54]
#+LANGUAGE: en
#+OPTIONS: H:2 num:t toc:nil \n:nil @:t ::t |:t ^:t -:t f:t *:t
#+OPTIONS: TeX:t LaTeX:t skip:nil d:nil todo:t pri:nil tags:not-in-toc
#+LATEX_HEADER: \input{../misc/SUTD-light}
#+latex_header: \AtBeginSection[]{\begin{frame}\frametitle{}\LARGE\insertsectionhead\vspace{0.1cm}\hrule\end{frame}}


#+TITLE: L1 - Introduction
#+AUTHOR: Nils Ole Tippenhauer
#+DATE: 50.020 Security/Spring term/2016

* This is a Section Title
** My first org-mode slide
- You can have bullet lists
- And sub-lists
- You can *highlight* words
- You can /emphasize/ words

I assume that you have the SUTD-light beamer theme installed in ../misc/, but you can also comment out that LATEX_HEADER line to get the default beamer style.
Now, you should be able to compile this to slides by using “C-C C-e l O” Emacs magic. The output can be seen here: org-mode test

Images

To include a centered image into the slide, I normally use the following code, which should be self-explanatory

#+begin_center
#+ATTR_LATEX: :width \linewidth
#+RESULTS:
file:figs/greatFigure.png
#+end_center

Animations, Only

This is where things become a bit messy, but still easy enough. I normally use the “<2->” style animations to put additional bullet points or answers to questions on a slide. The additional text will be invisible at the beginning, but still influence the layout. The “only” style animations do not consider the later content in the first layout, so it is not as useful for text. I use it exclusively to do “manual” animations of figures. For that, I draw each animation step separately (in Inkscape), and exchange the images on each slide.

I use separate blocks for each. In my theme, the standard block actually has same colors as background, so it is invisible. You generate block code by starting a new heading (without title) with ***, and then using C-C C-B b. I then manually add the BEAMER_act line into the block header.

Uncover example:

- This will be displayed first
*** :B_block:
:PROPERTIES:
:BEAMER_env: block
:BEAMER_act: <2->
:END:
- Then this will appear on the second animation slide

Beamer-style “only” is also possible, by using a block like this:

- This will be displayed first
*** :B_block:
:PROPERTIES:
:BEAMER_env: onlyenv
:BEAMER_ACT: <2>
:END:
- Then this will appear on the second animation slide

To export the onlyenv, you need to add the following to your .emacs:


;; only env for org-mode beamer
(add-to-list 'org-beamer-environments-extra
'("onlyenv" "O" "\\begin{onlyenv}%a" "\\end{onlyenv}"))