1techtalk-pse(1) Presentation Software techtalk-pse(1)
2
3
4
6 techtalk-pse - superior technical demonstration software
7
9 cd /path/to/talk/; techtalk-pse
10
11 techtalk-pse /path/to/talk/
12
14 Tech Talk "Platinum Supreme Edition" (PSE) is Linux Presentation
15 Software designed by technical people to give technical software
16 demonstrations to other technical people. It is designed to be simple
17 to use (for people who know how to use an editor and the command line)
18 and powerful, so that you can create informative, technically accurate
19 and entertaining talks and demonstrations.
20
21 Tech Talk PSE is good at opening editors at the right place, opening
22 shell prompts with preloaded history, compiling and running things
23 during the demonstration, displaying text, photos, figures and video.
24
25 Tech Talk PSE is bad at slide effects, chart junk and bullet points.
26
27 This manual page covers all the documentation you will need to use Tech
28 Talk PSE. The next section covers running the tool from the command
29 line. After that there is a "TUTORIAL" section to get you started.
30 Then there is a detailed "REFERENCE" section. Finally there is a
31 discussion on "WHAT MAKES A GOOD TALK".
32
34 A Tech Talk PSE talk is not a single file, but a directory full of
35 files. (If you want to start a new talk, see the "TUTORIAL" section
36 below). To display or run the talk, change into the directory
37 containing all those files and run the "techtalk-pse" command:
38
39 cd /path/to/talk/; techtalk-pse
40
41 You can also run "techtalk-pse" without changing directory, instead
42 specifying the path to the talk:
43
44 techtalk-pse /path/to/talk/
45
46 OPTIONS
47 --help
48 Display brief help and exit.
49
50 --last
51 Start at the last slide.
52
53 You cannot use this with the -n / --start option.
54
55 -n SLIDE | --start SLIDE
56 Start at the named slide. SLIDE is the shortest unique prefix of
57 the slide name, so to start at a slide named
58 00010-introduction.html, you could use -n 00010 or -n 00010-intro,
59 or give the full filename -n 00010-introduction.html.
60
61 The default is to start at the first slide in the talk.
62
63 --no-splash
64 Don't display the initial "splash" screen which advertises Tech
65 Talk PSE to your audience. Just go straight into the talk.
66
67 --verbose
68 Display verbose messages, useful for debugging or tracing what the
69 program is doing.
70
71 --version
72 Display version number and exit.
73
75 START WRITING A TALK
76 [Before you start writing your real talk, I urge you to read "WHAT
77 MAKES A GOOD TALK" below].
78
79 To start your talk, all you have to do is to make a new directory
80 somewhere:
81
82 mkdir talk
83 cd talk
84
85 A tech talk consists of HTML files ("slides") and shell scripts. The
86 filenames must start with a number, followed optionally by a
87 description, followed by the extension (".html" or ".sh"). So to start
88 our talk with two slides:
89
90 echo "This is the introduction" > 0010-introduction.html
91 echo "This is the second slide" > 0020-second.html
92
93 To run it, run the command from within the talk directory:
94
95 techtalk-pse
96
97 Any other file in the directory is ignored, so if you want to add
98 Makefiles, version control files etc, just go ahead.
99
100 TIPS FOR WRITING HTML
101 You may have your own techniques and tools for writing HTML, so this
102 section is just to share my ideas. I start every HTML file with a
103 standard stylesheet and Javascript header:
104
105 <link rel="stylesheet" href="style.css" type="text/css"/>
106 <script src="code.js" type="text/javascript"></script>
107
108 That just ensures that I can put common styling instructions for all my
109 slides in a single file ("style.css"), and I have one place where I can
110 add all Javascript, if I need to use any ("code.js").
111
112 BACKGROUNDS, FONTS AND LOGOS
113
114 To add a common background and font size to all slides, put this in
115 "style.css":
116
117 body {
118 font-size: 24pt;
119 background: url(background-image.jpg) no-repeat;
120 }
121
122 To add a logo in one corner:
123
124 body {
125 background: url(logo.jpg) top right no-repeat;
126 }
127
128 SCALING AND CENTERING
129
130 Scaling slide text and images so that they appear at the same
131 proportionate size for any screen resolution can be done using
132 Javascript. (See
133 <https://developer.mozilla.org/En/DOM/window.innerHeight>).
134
135 If you want to center text horizontally, use CSS, eg:
136
137 p.center {
138 text-align: center;
139 }
140
141 To center text vertically, CSS3 is supposed to offer a solution some
142 time, but while you're waiting for that try
143 <http://www.w3.org/Style/Examples/007/center#vertical>.
144
145 PREVIEWING HTML
146
147 I find it helpful to have Firefox open to display the HTML files and
148 styles as I edit them. Just start firefox in the talk directory:
149
150 firefox file://$(pwd) &
151
152 When you edit an HTML file, click the Firefox reload button to
153 immediately see your changes.
154
155 Tech Talk PSE uses Mozilla embedding to display HTML, which uses the
156 same Mozilla engine as Firefox, so what you should see in Firefox
157 should be identical to what Tech Talk PSE displays.
158
159 CREATING FIGURES
160 Use your favorite tool to draw the figure, convert it to an image (in
161 any format that the Mozilla engine can display) and include it using an
162 "<img>" tag, eg:
163
164 <img src="fig1.gif">
165
166 Suitable tools include: XFig, GnuPlot, GraphViz, and many TeX tools
167 such as PicTex and in particular TikZ.
168
169 EMBEDDING VIDEOS, ANIMATIONS, ETC.
170 Using HTML 5, embedding videos in the browser is easy. See:
171 <https://developer.mozilla.org/En/Using_audio_and_video_in_Firefox>
172
173 For animations, you could try Haxe <http://haxe.org/> which has a
174 Javascript back-end. There are many other possibilities.
175
176 If you are sure that the venue will have an internet connection, why
177 not embed a YouTube video.
178
179 DISPLAYING EXISTING WEB PAGES
180 Obviously you could just have an HTML file that contains a redirect to
181 the public web page:
182
183 <meta http-equiv="Refresh" content="0; url=http://www.example.com/">
184
185 However if you want your talk to work offline, then it's better to
186 download the web page in advance, eg. using Firefox's "Save Page As ->
187 Web Page, complete" feature, into the talk directory, then either
188 rename or make a symbolic link to the slide name:
189
190 ln -s "haXe - Welcome to haXe.html" 0010-haxe-homepage.html
191
192 TIPS FOR WRITING SHELL SCRIPTS
193 Make sure each "*.sh" file you write is executable, otherwise Tech Talk
194 PSE won't be able to run it. (The program gives a warning if you
195 forget this).
196
197 A good idea is to start each script by sourcing some common functions.
198 All my scripts start with:
199
200 #!/bin/bash -
201 source functions
202
203 where "functions" is another file (ignored by Tech Talk PSE) which
204 contains common functions for setting shell history and starting a
205 terminal.
206
207 In "functions", I have:
208
209 # -*- shell-script -*-
210
211 # Place any local environment variables required in 'local'.
212 if [ -f local ]; then source local; fi
213
214 export PS1="$ "
215
216 export HISTFILE=$talkdir/history
217
218 rm -f $HISTFILE
219 touch $HISTFILE
220
221 add_history ()
222 {
223 echo "$@" >> $HISTFILE
224 }
225
226 terminal ()
227 {
228 # Make $HISTFILE unwritable so the shell won't update it
229 # when it exits.
230 chmod -w $HISTFILE
231
232 # Run gnome-terminal.
233 exec \
234 gnome-terminal \
235 --window \
236 --geometry=+100+100 \
237 --hide-menubar \
238 --disable-factory \
239 -e '/bin/bash --norc' \
240 "$@"
241 }
242
243 By initializing the shell history, during your talk you can rapidly
244 recall commands to start parts of the demonstration just by hitting the
245 Up arrow. A complete shell script from one of my talks would look like
246 this:
247
248 #!/bin/bash -
249 source functions
250 add_history guestfish -i debian.img
251 terminal --title="Examining a Debian guest image in guestfish"
252
253 This is just a starting point for your own scripts. You may want to
254 use a different terminal, such as xterm, and you may want to adjust
255 terminal fonts.
256
258 ORDER OF FILES
259 Tech Talk PSE displays the slides in the directory in lexicographic
260 order (the same order as "LANG=C ls -1"). Only files matching the
261 following regexp are considered:
262
263 ^(\d+)(?:-.*)\.(html|sh)$
264
265 For future compatibility, you should ensure that every slide has a
266 unique numeric part (ie. don't have "0010-aaa.html" and
267 "0010-bbb.html"). This is because in future we want to have the
268 ability to display multiple files side by side.
269
270 Also for future compatibility, don't use file names that have an
271 uppercase letter immediately after the numeric part. This is because
272 in future we want to allow placement hints using filenames like
273 "0010L-on-the-left.html" and "0010R-on-the-right.html".
274
275 BASE URL AND CURRENT DIRECTORY
276 The base URL is set to the be the directory containing the talk files.
277 Thus you should use relative paths, eg:
278
279 <img src="fig1.gif">
280
281 You can also place assets into subdirectories, because subdirectories
282 are ignored by Tech Talk PSE, eg:
283
284 <img src="images/fig1.gif">
285
286 When running shell scripts, the current directory is also set to be the
287 directory containing the talk files, so the same rules about using
288 relative paths apply there too.
289
290 The environment variable $talkdir is exported to scripts and it
291 contains the absolute path of the directory containing the talk files.
292 When a script is run, the current directory is the same as $talkdir,
293 but if your script changes directory (eg. into a subdirectory
294 containing supporting files) then it can be useful to use $talkdir to
295 refer back to the original directory.
296
298 I like what Edward Tufte writes, for example his evisceration of
299 PowerPoint use at NASA here:
300 http://www.edwardtufte.com/bboard/q-and-a-fetch-msg?msg_id=0001yB
301 <http://www.edwardtufte.com/bboard/q-and-a-fetch-msg?msg_id=0001yB>
302
303 However it is sometimes hard to translate his ideas into clear
304 presentations, and not all of that is the fault of the tools. Here are
305 my thoughts and rules on how to deliver a good talk.
306
307 First, most important rule: Before you start drawing any slides at all,
308 write your talk as a short essay.
309
310 This is the number one mistake that presenters make, and it is partly a
311 tool fault, because PowerPoint, OpenOffice, even Tech Talk PSE, all
312 open up on an initial blank slide, inviting you to write a title and
313 some bullet points. If you start that way, you will end up using the
314 program as a kind of clumsy outlining tool, and then reading that
315 outline to your audience. That's boring and a waste of time for you
316 and your audience. (It would be quicker for them just to download the
317 talk and read it at home).
318
319 Secondly: How long do you want to spend preparing the talk? A good
320 talk, with a sound essay behind it, well thought out diagrams and
321 figures, and interesting demonstrations, takes many hours to prepare.
322 How many hours? I would suggest thinking about how many hours of
323 effort your audience are putting in. Even just 20 people sitting there
324 for half an hour is 10 man-hours of attention, and that is a very small
325 talk, and doesn't include all the extra time and hassle that it took to
326 get them all in one place.
327
328 I don't think you can get away with spending less than two full days
329 preparing a talk, if you want to master the topic and draw up accurate
330 slides. Steve Jobs is reputed to spend weeks preparing his annual
331 sales talk to the Apple faithful.
332
333 Thirdly: Now that you're going to write your talk as an essay, what
334 should go in the slides? I would say that you should consider
335 delivering the essay, not the slides, to people who don't make the
336 talk. An essay can be turned into an article or blog posting, whereas
337 even "read-out-the-bullet-point" slides have a low information density,
338 large size, and end-user compatibility problems (*.pptx anyone?).
339
340 What, then, goes on the slides? Anything you cannot just say:
341 diagrams, graphs, videos, animations, and of course (only with Tech
342 Talk PSE!) demonstrations.
343
344 Lastly: Once you've got your talk as an essay and slides, practice,
345 practice and practice again. Deliver the talk to yourself in the
346 mirror, to your colleagues. Practice going backwards and forwards
347 through the slides, using your actual laptop and the software so you
348 know what to click and what keys to press. Partly memorize what you
349 are going to say (but use short notes written on paper if you need to).
350
352 The Cognitive Style of PowerPoint, Tufte, Edward R.
353
355 Richard W.M. Jones <http://people.redhat.com/~rjones/>
356
358 Copyright (C) 2010 Red Hat Inc.
359
360 This program is free software; you can redistribute it and/or modify it
361 under the terms of the GNU General Public License as published by the
362 Free Software Foundation; either version 2 of the License, or (at your
363 option) any later version.
364
365 This program is distributed in the hope that it will be useful, but
366 WITHOUT ANY WARRANTY; without even the implied warranty of
367 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
368 General Public License for more details.
369
370 You should have received a copy of the GNU General Public License along
371 with this program; if not, write to the Free Software Foundation, Inc.,
372 675 Mass Ave, Cambridge, MA 02139, USA.
373
374
375
376techtalk-pse-1.0.1 2010-11-16 techtalk-pse(1)