|
| 1 | +--- |
| 2 | +layout: page |
| 3 | +title: "Instructor Notes" |
| 4 | +permalink: /guide/ |
| 5 | +--- |
| 6 | + |
| 7 | +____ |
| 8 | +# Making a handout |
| 9 | + |
| 10 | +Librarians like handouts. To make a handout for the [Regular Expressions episode](http://data-lessons.github.io/library-data-intro/04-regular-expressions/) do the following: |
| 11 | + |
| 12 | +- download the reference.md page for this lesson from [https://raw.githubusercontent.com/data-lessons/library-data-intro/gh-pages/reference.md](https://raw.githubusercontent.com/data-lessons/library-data-intro/gh-pages/reference.md) (right click, save page as). |
| 13 | +- open the reference.md in a text editor and remove the header (the first five lines). Note for Windows users: if '.txt' has been added to the filename, resave without the '.txt'. |
| 14 | +- you now have a markdown file ready to convert to .docx or .pdf for printing. Now either: |
| 15 | + - *either* head to a webservice like [Dillinger](http://dillinger.io/), paste your markdown in the left hand columns, and use the 'Export As' dropdown to create a pdf document. |
| 16 | + - *or* download and install [pandoc], open the shell, and from the directory the markdown file is in run `pandoc reference.md -f markdown -t docx -s -o reference.md` |
| 17 | + |
| 18 | +____ |
| 19 | +# General |
| 20 | + |
| 21 | +Two sets of sticky notes (ideally one red and one blue) are required to run a Library Carpentry workshop. Learners should be encouraged to put a red sticky note on the back of their laptop (raised like a flag) if they need help, and to put the blue sticky note on the back of their laptop if they don't need help. |
| 22 | + |
| 23 | +At each break, ask learners to provide feedback on their learning experience since the last break. They should do this by writing one thing that didn't go well on their red sticky note and and one thing that did go well on their white sticky note. Collect these sticky notes, keep them organised so you know which section of the lesson their pertain to, and collate them after the workshop. Matters arising should be raised as Github issues for the relevant lesson. |
| 24 | + |
| 25 | +____ |
| 26 | +# 02-jargon-busting.md |
| 27 | + |
| 28 | +Requirements for this task are: |
| 29 | + |
| 30 | +- boards/pads |
| 31 | +- pens |
| 32 | + |
| 33 | +The purpose of this task is threefold. First, it is an icebreaker. Second, it helps learners find their confidence level and situate their experience and knowledge in the context of fellow learners. Third, it helps manage expectation as the instructor can explain to learners which terms, phrases, or ideas will be covered by this Library Carpentry workshop, which terms, phrases, or ideas are covered by other Library Carpentry lessons, and which terms, phrases, or ideas are covered elsewhere. |
| 34 | + |
| 35 | +When collating feedback on the whiteboard, one strategy is to organise the board from sad (on the left) to happy (on the right), then to locate the terms, phrases, or ideas offered by learners on that spectrum. This performs three functions. First, it opens space to discuss which terms, phrases, or ideas people find or perceive to be easy to understand and what they find or perceive to be hard to understand. Second, it helps identify expertise in the room that learners may turn to for questions during breaks. Third, the instructor can return to the board at the end of the workshop to judge whether learners are more or less confident with some of the terms, phrases, or ideas identified at the outset. |
| 36 | + |
| 37 | +____ |
| 38 | +# 03-foundation.md |
| 39 | + |
| 40 | +The material in this episode is intended as a guide. Instructors are recommended to use this section as an opportunity to discuss foundational skills that they think are relevant. |
| 41 | + |
| 42 | +The purpose of the section is to situate a Library Carpentry workshop in a wider landscape of practice and to demonstrate the value of commonsense approaches to software and data. |
| 43 | + |
| 44 | +_____ |
| 45 | +# 04-regular-expressions.md 05-quiz.md 06-quiz-answers.md |
| 46 | + |
| 47 | +You may find it useful to use slides to work through episode four (see below for potential slides). Before starting the exercise, encourage learners to work with pen and paper, explain that with regex there are sometimes multiple answers to the same question (that is, some regex is perfect and some does the job given the likely data structures we use) and point them towards places to test their regex: for example regex101 [https://regex101.com/](https://regex101.com/), rexegper [http://regexper.com/](http://regexper.com/), myregexp [http://myregexp.com/]([http://myregexp.com/]), or whichever service you prefer. Also point them towards the quiz (episode five and six) as something they may move onto if they they finish the exercises early or look at after the workshop. |
| 48 | + |
| 49 | +____ |
| 50 | +# Potential Slides for Instructor |
| 51 | + |
| 52 | +If you want, use the below as a basis for slides |
| 53 | + |
| 54 | +## Where go to for help |
| 55 | + |
| 56 | +*There are many places!* |
| 57 | + |
| 58 | +### Stickers |
| 59 | + |
| 60 | +### Helpers |
| 61 | + |
| 62 | +### Sticky notes |
| 63 | + |
| 64 | +### github.com/??? |
| 65 | + |
| 66 | +## Jargon Busting |
| 67 | + |
| 68 | +### Teams of 5 or 6 |
| 69 | + |
| 70 | +### Write terms you want busting on stickies |
| 71 | + |
| 72 | +### Cluster (retaining duplicates) |
| 73 | + |
| 74 | +### Discuss and explain |
| 75 | + |
| 76 | +### Note resolved terms |
| 77 | + |
| 78 | +### Note unresolved terms |
| 79 | + |
| 80 | +### Report back |
| 81 | + |
| 82 | +## Foundations |
| 83 | + |
| 84 | +### The Computer is Stupid |
| 85 | + |
| 86 | +### Why automate |
| 87 | + |
| 88 | +### Keyboard shortcuts are your friend |
| 89 | + |
| 90 | +### Plain text formats are your friend |
| 91 | + |
| 92 | +### Structuring files and folders |
| 93 | + |
| 94 | +## Foundations |
| 95 | + |
| 96 | +### The Computer is Stupid |
| 97 | + |
| 98 | +#### ERROR |
| 99 | + |
| 100 | +## Foundations |
| 101 | + |
| 102 | +### Why automate? |
| 103 | + |
| 104 | +#### Borrow, borrow, borrow |
| 105 | + |
| 106 | +#### There is no correct language |
| 107 | + |
| 108 | +#### Professional development |
| 109 | + |
| 110 | +#### Knowing some code \~ evaluating software |
| 111 | + |
| 112 | +#### Making time to do fun stuff! |
| 113 | + |
| 114 | +#### Andromeda Yelton, "Coding for Librarians: Learning by Example", *Library Technology Reports* 51:3 (April 2015), [doi: 10.5860/ltr.51n3](http://dx.doi.org/10.5860/ltr.51n3) |
| 115 | + |
| 116 | +## Foundations |
| 117 | + |
| 118 | +### Why automate? |
| 119 | + |
| 120 | +Credit: [Andy Kirk](https://twitter.com/visualisingdata/statuses/621957383464599552?tw_i=621957383464599552&tw_e=media&tw_p=archive) |
| 121 | + |
| 122 | +## Foundations |
| 123 | + |
| 124 | +### Keyboard shortcuts are your friend |
| 125 | + |
| 126 | +### Efficiency and control |
| 127 | + |
| 128 | +## Foundations |
| 129 | + |
| 130 | +### Plain text formats are your friend |
| 131 | + |
| 132 | +#### Computers process them better |
| 133 | + |
| 134 | +#### Platform agnostic |
| 135 | + |
| 136 | +#### Display orientated files aren't your friend |
| 137 | + |
| 138 | +#### Markdown |
| 139 | + |
| 140 | +## Foundations |
| 141 | + |
| 142 | +### Structuring files and folders |
| 143 | + |
| 144 | +#### Consistent and predictable data structure |
| 145 | + |
| 146 | +#### Semantic-data hybrid directory names |
| 147 | + |
| 148 | +#### Your own system is fine |
| 149 | + |
| 150 | +#### Links files and directories with names |
| 151 | + |
| 152 | +## You are the most likely person to forget what you once did! |
| 153 | + |
| 154 | +## Regular Expressions |
| 155 | + |
| 156 | +### Match on types of character |
| 157 | + |
| 158 | +### Match patterns |
| 159 | + |
| 160 | +### Capture the parts that match your pattern |
| 161 | + |
| 162 | +## Regular Expressions |
| 163 | + |
| 164 | +### `organi[sz]e` |
| 165 | + |
| 166 | +#### organise (match) |
| 167 | + |
| 168 | +#### organize (match) |
| 169 | + |
| 170 | +#### reorganise (match part so will also find) |
| 171 | + |
| 172 | +#### reorganize (match part so will also find) |
| 173 | + |
| 174 | +## Regular Expressions |
| 175 | + |
| 176 | +### `[ABC]` matches A or B or C. |
| 177 | + |
| 178 | +### `[A-Z]` matches any upper case letter. |
| 179 | + |
| 180 | +### `[A-Za-z0-9]` matches any upper or lower case letter or any digit. |
| 181 | + |
| 182 | +## Regular Expressions |
| 183 | + |
| 184 | +### `.` matches any character at all. |
| 185 | + |
| 186 | +### `\d` matches any single digit. |
| 187 | + |
| 188 | +### `\w` matches any part of word character. |
| 189 | + |
| 190 | +### `\s` matches any space, tab, or newline. |
| 191 | + |
| 192 | +### `\b` matches a word boundary. |
| 193 | + |
| 194 | +### `^` asserts start of the line. |
| 195 | + |
| 196 | +### `$` asserts end of the line |
| 197 | + |
| 198 | +## Regular Expressions |
| 199 | + |
| 200 | +### `^\[Oo\]rgani.e\b` |
| 201 | + |
| 202 | +## Regular Expressions |
| 203 | + |
| 204 | +### `*` matches proceeding character any number of times including zero. |
| 205 | + |
| 206 | +### `+` matches proceeding character any number of times excluding zero. |
| 207 | + |
| 208 | +### `?` matches the proceeding character one or zero times. |
| 209 | + |
| 210 | +### `{VALUE,VALUE}` matches proceeding character a defined number of times. |
| 211 | + |
| 212 | +### `|` simply means or. |
| 213 | + |
| 214 | +## Regular Expressions |
| 215 | + |
| 216 | +### `^[Oo]rgani.e\w\*` |
| 217 | + |
| 218 | +## Regular Expressions |
| 219 | + |
| 220 | +### `[Oo]rgani.e\w+$` |
| 221 | + |
| 222 | +## Regular Expressions |
| 223 | + |
| 224 | +### `^[Oo]rgani.e\w?\b` |
| 225 | + |
| 226 | +## Regular Expressions |
| 227 | + |
| 228 | +### `^[Oo]rgani.e\w?$` |
| 229 | + |
| 230 | +## Regular Expressions |
| 231 | + |
| 232 | +### `\b[Oo]rgani.e\w{2}\b` |
| 233 | + |
| 234 | +## Regular Expressions |
| 235 | + |
| 236 | +### `\b[Oo]rgani.e\b|\b[Oo]rgani.e\w{1}\b` |
0 commit comments