Done for a moment
authorNeil Smith <neil.git@njae.me.uk>
Sat, 8 Mar 2014 16:53:12 +0000 (11:53 -0500)
committerNeil Smith <neil.git@njae.me.uk>
Sat, 8 Mar 2014 16:53:12 +0000 (11:53 -0500)
slides/aims.html [new file with mode: 0644]
slides/caesar-break.html [new file with mode: 0644]
slides/caesar-encipher.html

diff --git a/slides/aims.html b/slides/aims.html
new file mode 100644 (file)
index 0000000..e830227
--- /dev/null
@@ -0,0 +1,76 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <title>Aims</title>
+    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+    <style type="text/css">
+      /* Slideshow styles */
+      body {
+        font-size: 20px;
+      }
+      h1, h2, h3 {
+        font-weight: 400;
+        margin-bottom: 0;
+      }
+      h1 { font-size: 3em; }
+      h2 { font-size: 2em; }
+      h3 { font-size: 1.6em; }
+      a, a > code {
+        text-decoration: none;
+      }
+      code {
+        -moz-border-radius: 5px;
+        -web-border-radius: 5px;
+        background: #e7e8e2;
+        border-radius: 5px;
+        font-size: 16px;
+      }
+      .plaintext {
+        background: #272822;
+        color: #80ff80;
+        text-shadow: 0 0 20px #333;
+        padding: 2px 5px;
+      }
+      .ciphertext {
+        background: #272822;
+        color: #ff6666;
+        text-shadow: 0 0 20px #333;
+        padding: 2px 5px;
+      }
+    </style>
+  </head>
+  <body>
+    <textarea id="source">
+
+# Aims
+
+Material aimed for two (three?) audiences
+
+1. Teacher CPD
+2. In-school resources for children
+3. (Outreach resources, mainly Bletchley Park)
+
+After your suggestions on how to extend these notes to hit these audiences
+
+---
+
+# Programming != Computing
+
+> Computational thinking is like architectural thinking. Programming is like
+> bricklaying. 
+
+This course will cover four things, in increasing order of importance.
+
+1. Teach some ideas about ciphers and cryptanalysis.
+2. Show off some tools: IPython, git, doctest.
+3. Explore some different corners of Python (itertools, multiprocessing).
+4. Expose my thinking for how to solve these problems. 
+
+    </textarea>
+    <script src="http://gnab.github.io/remark/downloads/remark-0.6.0.min.js" type="text/javascript">
+    </script>
+    <script type="text/javascript">
+      var slideshow = remark.create();
+    </script>
+  </body>
+</html>
\ No newline at end of file
diff --git a/slides/caesar-break.html b/slides/caesar-break.html
new file mode 100644 (file)
index 0000000..5c95fc2
--- /dev/null
@@ -0,0 +1,82 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <title>Breaking caesar ciphers</title>
+    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+    <style type="text/css">
+      /* Slideshow styles */
+      body {
+        font-size: 20px;
+      }
+      h1, h2, h3 {
+        font-weight: 400;
+        margin-bottom: 0;
+      }
+      h1 { font-size: 3em; }
+      h2 { font-size: 2em; }
+      h3 { font-size: 1.6em; }
+      a, a > code {
+        text-decoration: none;
+      }
+      code {
+        -moz-border-radius: 5px;
+        -web-border-radius: 5px;
+        background: #e7e8e2;
+        border-radius: 5px;
+        font-size: 16px;
+      }
+      .plaintext {
+        background: #272822;
+        color: #80ff80;
+        text-shadow: 0 0 20px #333;
+        padding: 2px 5px;
+      }
+      .ciphertext {
+        background: #272822;
+        color: #ff6666;
+        text-shadow: 0 0 20px #333;
+        padding: 2px 5px;
+      }
+    </style>
+  </head>
+  <body>
+    <textarea id="source">
+
+# Breaking caesar ciphers
+
+![centre-aligned Caesar wheel](caesarwheel1.gif)
+
+---
+
+# Brute force
+
+How many keys to try?
+
+## Basic idea
+
+```
+for each key:
+    decipher with this key
+    how close is it to English?
+    remember the best key
+```
+
+What steps do we know how to do?
+
+---
+# How close is it to English?
+
+What does English look like?
+* We need a model of English.
+
+How do we define "closeness"?
+
+
+    </textarea>
+    <script src="http://gnab.github.io/remark/downloads/remark-0.6.0.min.js" type="text/javascript">
+    </script>
+    <script type="text/javascript">
+      var slideshow = remark.create();
+    </script>
+  </body>
+</html>
\ No newline at end of file
index 3c403953ac985a2fc8c4b9175abd679eed55275a..c4e8fb10f4d01ebff0b8e4d249e3599df61e4f93 100644 (file)
@@ -1,7 +1,7 @@
 <!DOCTYPE html>
 <html>
   <head>
-    <title>Title</title>
+    <title>Caesar cipher</title>
     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
     <style type="text/css">
       /* Slideshow styles */
@@ -12,7 +12,7 @@
         font-weight: 400;
         margin-bottom: 0;
       }
-      h1 { font-size: 4em; }
+      h1 { font-size: 3em; }
       h2 { font-size: 2em; }
       h3 { font-size: 1.6em; }
       a, a > code {
@@ -103,37 +103,13 @@ def caesar_encipher_letter(letter, shift):
     'b'
     """
     if letter in string.ascii_letters:
+    .
+    .
+    .
 ```
 
 ---
 
-# My tests
-
-```python
-def caesar_encipher_letter(letter, shift):
-    """Encipher a letter, given a shift amount
-
-    >>> caesar_encipher_letter('a', 1)
-    'b'
-    >>> caesar_encipher_letter('a', 2)
-    'c'
-    >>> caesar_encipher_letter('b', 2)
-    'd'
-    >>> caesar_encipher_letter('x', 2)
-    'z'
-    >>> caesar_encipher_letter('y', 2)
-    'a'
-    >>> caesar_encipher_letter('z', 2)
-    'b'
-    >>> caesar_encipher_letter('z', -1)
-    'y'
-    >>> caesar_encipher_letter('a', -1)
-    'z'
-    """
-    if letter in string.ascii_letters:
-```
----
-
 # The magic doctest incantation
 
 ```python