You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1188 lines
63 KiB

17 years ago
<?xml version='1.0'?>
<!DOCTYPE cscpage SYSTEM "../csc.dtd">
<cscpage title="Media">
<section title="CSC Media">
Here you will find a wide variety of audio and video recordings of past
CSC and other university-related talks. Some of these files are very large,
and we do not recommend attempting to stream them. Most of these should be
available upon request at the Computer Science Club office to be burnt to
CD or DVD should you so choose.
<ul class="media">
<mediaitem title="How Browsers Work">
Veteran Mozilla engineer Ehsan Akhgari presents a talk on the internals of web browsers.
The material ranges from the fundamentals of content rendering to the latest innovations in browser design.
Web browsers have evolved. From their humble beginnings as simple HTML
rendering engines they have grown and evolved into rich application
platforms. This talk will start with the fundamentals: how a browser
creates an on-screen representation of the resources downloaded from
the network. (Boring, right? But we have to start somewhere.) From
there we'll get into the really exciting stuff: the latest innovations
in Web browsers and how those innovations enable — even encourage —
developers to build more complex applications than ever before. You'll
see real-world examples of people building technologies on top of
these "simple rendering engines" that seemed impossible a short time
<presentor>Ehsan Akhgari</presentor>
<thumbnail file="how-browsers-work-thumb-small.jpg" />
<mediafile file="how-browsers-work.mp4" type="Talk (x264)" />
<mediafile file="how-browsers-work.mpg" type="Talk (MPG)" />
<flvfile file="how-browsers-work.flv" />
Ehsan Akhgari has contributed to the Mozilla project for more than 5
years. He has worked on various parts of Firefox, including the user
interface and the rendering engine. He originally implemented Private
Browsing in Firefox. Right now he's focusing on the editor component
in the Firefox engine.
<mediaitem title="General Purpose Computing on Graphics Cards">
GPGPU (general purpose graphics processing unit) computing is an
expanding area of interest, with applications in physics, chemistry,
applied math, finance, and other fields. nVidia has created an
architecture named CUDA to allow programmers to use graphics cards
without having to write PTX assembly or understand OpenGL. CUDA is
designed to allow for high-performance parallel computation controlled
from the CPU while granting the user fine control over the behaviour
and performance of the device.
In this talk, I'll discuss the basics of nVidia's CUDA architecture
(with most emphasis on the CUDA C extensions), the GPGPU programming
environment, optimizing code written for the graphics card, algorithms
with noteworthy performance on GPU, libraries and tools available to
the GPGPU programmer, and some applications to condensed matter
physics. No physics background required!
<presentor>Katie Hyatt</presentor>
<thumbnail file="kshyatt-gpgpu-thumb-small.jpg" />
<mediafile file="kshyatt-gpgpu.mp4" type="Talk (x264)" />
<mediafile file="kshyatt-gpgpu-480p.mp4" type="Talk (x246 480p)" />
<flvfile file="kshyatt-gpgpu-480p.mp4" />
<!-- encoding problems
<mediaitem title="Analysis of randomized algorithms via the probabilistic method">
In this talk, we will give a few examples that illustrate the basic method and show how it can be used to prove the existence of objects with desirable combinatorial properties as well as produce them in expected polynomial time via randomized algorithms. Our main goal will be to present a very slick proof from 1995 due to Spencer on the performance of a randomized greedy algorithm for a set-packing problem. Spencer, for seemingly no reason, introduces a time variable into his greedy algorithm and treats set-packing as a Poisson process. Then, like magic, he is able to show that his greedy algorithm is very likely to produce a good result using basic properties of expected value.
The probabilistic method is an extremely powerful tool in combinatorics that can be
used to prove many surprising results. The idea is the following: to prove that an
object with a certain property exists, we define a distribution of possible objects
and use show that, among objects in the distribution, the property holds with
non-zero probability. The key is that by using the tools and techniques of
probability theory, we can vastly simplify proofs that would otherwise require very
complicated combinatorial arguments.
As a technique, the probabilistic method developed rapidly during the latter half of
the 20th century due to the efforts of mathematicians like Paul Erdős and increasing
interest in the role of randomness in theoretical computer science. In essence, the
probabilistic method allows us to determine how good a randomized algorithm's output
is likely to be. Possibly applications range from graph property testing to
computational geometry, circuit complexity theory, game theory, and even statistical
In this talk, we will give a few examples that illustrate the basic method and show
how it can be used to prove the existence of objects with desirable combinatorial
properties as well as produce them in expected polynomial time via randomized
algorithms. Our main goal will be to present a very slick proof from 1995 due to
Spencer on the performance of a randomized greedy algorithm for a set-packing
problem. Spencer, for seemingly no reason, introduces a time variable into his
greedy algorithm and treats set-packing as a Poisson process. Then, like magic,
he is able to show that his greedy algorithm is very likely to produce a good
result using basic properties of expected value.
Properties of Poisson and Binomial distributions will be applied, but I'll remind
everyone of the needed background for the benefit of those who might be a bit rusty.
Stat 230 will be more than enough. Big O notation will be used, but not excessively.
<presentor>Elyot Grant</presentor>
<mediaitem title="Machine learning vs human learning: will scientists become obsolete">
<presentor>Dr. Shai Ben-David</presentor>
<thumbnail file="human-vs-machine-learning-thumb-small.jpg" />
<mediafile file="human-vs-machine-learning.mp4" type="Talk (x264)" />
<mediafile file="human-vs-machine-learning.mpg" type="Talk (MPG)" />
<flvfile file="human-vs-machine-learning.flv" />
<mediaitem title="How to build a brain: From single neurons to cognition">
Theoretical neuroscience is a new discipline focused on constructing mathematical models of brain function. It has made significant headway in understanding aspects of the neural code. However, past work has largely focused on small numbers of neurons, and so the underlying representations are often simple. In this talk I demonstrate how the ideas underlying these simple forms of representation can underwrite a representational hierarchy that scales to support sophisticated, structure-sensitive representations.
Theoretical neuroscience is a new discipline focused on constructing
mathematical models of brain function. It has made significant
headway in understanding aspects of the neural code. However,
past work has largely focused on small numbers of neurons, and
so the underlying representations are often simple. In this
talk I demonstrate how the ideas underlying these simple forms of
representation can underwrite a representational hierarchy that
scales to support sophisticated, structure-sensitive
representations. I will present a general architecture, the semantic
pointer architecture (SPA), which is built on this hierarchy
and allows the manipulation, processing, and learning of structured
representations in neurally realistic models. I demonstrate the
architecture on Progressive Raven's Matrices (RPM), a test of
general fluid intelligence.
<presentor>Dr. Chris Eliasmith</presentor>
<thumbnail file="how-to-build-a-brain-thumb-small.jpg" />
<mediafile file="how-to-build-a-brain.mp4" type="Talk (x264)" />
<mediafile file="how-to-build-a-brain.mpg" type="Talk (MPG)" />
<flvfile file="how-to-build-a-brain.flv" />
<mediaitem title="BareMetal OS">
BareMetal is a new 64-bit OS for x86-64 based computers. The OS is written entirely in Assembly, while applications can be written in Assembly or C/C++. High Performance Computing is the main target application.
<presentor>Ian Seyler, Return to Infinity</presentor>
<thumbnail file="bare-metal-os-thumb-small.jpg" />
<mediafile file="bare-metal-os.mp4" type="Talk (x264)" />
<mediafile file="bare-metal-os.mpg" type="Talk (MPG)" />
<flvfile file="bare-metal-os.flv" />
<mediaitem title="A Brief Introduction to Video Encoding">
In this talk, I will go over the concepts used in video encoding (such as motion estimation/compensation, inter- and intra- frame prediction, quantization and entropy encoding), and then demonstrate these concepts and algorithms in use in the MPEG-2 and the H.264 video codecs. In addition, some clever optimization tricks using SIMD/vectorization will be covered, assuming sufficient time to cover these topics.
With the recent introduction of digital TV and the widespread success
of video sharing websites such as youtube, it is clear that the task
of lossily compressing video with good quality has become important.
Similarly, the complex algorithms involved require high amounts of
optimization in order to run fast, another important requirement for
any video codec that aims to be widely used/adopted.
<presentor>Peter Barfuss</presentor>
<thumbnail file="pbarfuss-video-encoding-thumb-small.jpg" />
<mediafile file="pbarfuss-video-encoding.mp4" type="Talk (x264)" />
<mediafile file="pbarfuss-video-encoding.mpg" type="Talk (MPG)" />
<flvfile file="pbarfuss-video-encoding.flv" />
<mediaitem title="Cooking for Geeks">
The CSC is happy to be hosting Jeff Potter, author of "Cooking for Geeks" for a presentation on the finer arts of food science.
Jeff's book has been featured on NPR, BBC and his presentations have wowed audiences of hackers &amp; foodies alike.
We're happy to have Jeff joining us for a hands on demonstration.
But you don't have to take our word for it... here's what Jeff has to say:
Hi! I'm Jeff Potter, author of Cooking for Geeks (O'Reilly Media, 2010), and I'm doing a "D.I.Y. Book Tour" to talk
about my just-released book. I'll talk about the food science behind what makes things yummy, giving you a quick
primer on how to go into the kitchen and have a fun time turning out a good meal.
Depending upon the space, I’ll also bring along some equipment or food that we can experiment with, and give you a chance to play with stuff and pester me with questions.
<presentor>Jeff Potter</presentor>
<thumbnail file="cooking-for-geeks-thumb-small.jpg" />
<mediafile file="cooking-for-geeks.mp4" type="Talk (x264)" />
<mediafile file="cooking-for-geeks.mpg" type="Talk (MPG)" />
<flvfile file="cooking-for-geeks.flv" />
<mediaitem title="The Art of the Propagator">
We develop a programming model built on the idea that the basic computational elements are autonomous machines interconnected by shared cells through which they communicate. Each machine continuously examines the cells it is interested in, and adds information to some based on deductions it can make from information from the others. This model makes it easy to smoothly combine expression-oriented and constraint-based programming; it also easily accommodates implicit incremental distributed search in ordinary programs.
This work builds on the original research of Guy Lewis Steele Jr. and was developed more recently with the help of Chris Hanson.
<presentor>Gerald Jay Sussman</presentor>
<thumbnail file="sussman-propagator-thumb-small.jpg" />
<mediafile file="sussman-propagator.mkv" type="Talk (MKV)" />
<mediafile file="sussman-propagator-slides.pdf" type="Slides (PDF)" />
<mediaitem title="Why Programming is a Good Medium for Expressing Poorly Understood and Sloppily Formulated Ideas">
I have stolen my title from the title of a paper given by Marvin Minsky in the 1960s, because it most effectively expresses what I will try to convey in this talk.
We have been programming universal computers for about 50 years. Programming provides us with new tools to express ourselves. We now have intellectual tools to describe "how to" as well as "what is". This is a profound transformation: it is a revolution in the way we think and in the way we express what we think.
For example, one often hears a student or teacher complain that the student knows the "theory" of some subject but cannot effectively solve problems. We should not be surprised: the student has no formal way to learn technique. We expect the student to learn to solve problems by an inefficient process: the student watches the teacher solve a few problems, hoping to abstract the general procedures from the teacher's behavior on particular examples. The student is never given any instructions on how to abstract from examples, nor is the student given any language for expressing what has been learned. It is hard to learn what one cannot express. But now we can express it!
Expressing methodology in a computer language forces it to be unambiguous and computationally effective. The task of formulating a method as a computer-executable program and debugging that program is a powerful exercise in the learning process. The programmer expresses his/her poorly understood or sloppily formulated idea in a precise way, so that it becomes clear what is poorly understood or sloppily formulated. Also, once formalized procedurally, a mathematical idea becomes a tool that can be used directly to compute results.
I will defend this viewpoint with examples and demonstrations from electrical engineering and from classical mechanics.
<presentor>Gerald Jay Sussman</presentor>
<thumbnail file="sussman-why-programming-thumb-small.jpg" />
<mediafile file="sussman-why-programming.mkv" type="Talk (MKV)" />
<mediafile file="sussman-why-programming-slides.pdf" type="Slides (PDF)" />
<mediaitem title="A brief history of CS curriculum at UW">
I'll survey the evolution of our computer science curriculum over the
past thirty-five years to try to convey the reasons (not always entirely
rational) behind our current mix of courses and their division into core
and optional. After some remarks about constraints and opportunities in
the near future, I'll open the floor to discussion, and hope to hear
some candid comments about the state of CS at UW and how it might be
About the speaker:
Prabhakar Ragde is a Professor in the School of Computer Science at UW.
He was Associate Chair for Curricula during the period that saw the
creation of the Bioinformatics and Software Engineering programs, the
creation of the BCS degree, and the strengthening of the BMath/CS degree.
<presentor>Prabhakar Ragde</presentor>
<thumbnail file="prabhakar-history-of-uw-cs-thumb-small.jpg" />
<mediafile file="prabhakar-history-of-uw-cs.avi" type="Talk (XviD)" />
<mediafile file="prabhakar-history-of-uw-cs.ogg" type="Talk (Ogg/Theora)" />
<mediafile file="prabhakar-history-of-uw-cs.mpg" type="Talk (MPG)" />
<flvfile file="prabhakar-history-of-uw-cs.flv" />
<p>If you would like to contact Dr. Ragde check out his <a href="">website</a> or e-mail him at plragde at uwaterloo dot ca.</p>
<mediaitem title="The Future of Robotics and Automated Systems">
Bill Gates in his article "A Robot in every home" in the Scientific
American describes how the current robotics industry resembles the
1970's of the Personal Computer Industry. In fact it is not just
Microsoft which has already taken a step forward by starting the
Microsoft Robotics studio, but robotics researchers around the world
believe that robotics and automation systems are going to be
ubiquitous in the next 10-20 years (similar to Mark Weiser's
analogy of Personal Computers 20 years ago). Natural User Interfaces
(NUIs) are going to revolutionize the way we interact with computers,
cellular phones, household appliances, automated systems in our daily
lives. Just like the GUI made personal computing a reality, I believe
natural user interfaces will do the same for robotics.
</p><p>During the presentation I will be presenting my ongoing
software project on natural user interfaces as well as sharing my
goals for the future, one of which is to provide an NUI SDK and the
other to provide a common Robotics OS for every hardware vendor that
will enable people to make applications without worrying about
underlying functionality. If time permits I would like to present a
demo of my software prototype.
<presentor>Sam Pasupalak</presentor>
<thumbnail file="sam-papusalak-future-thumb-small.jpg" />
<mediafile file="sam-papusalak-future.avi" type="Talk (XviD)" />
<mediafile file="sam-papusalak-future.ogg" type="Talk (Ogg/Theora)" />
<mediafile file="sam-papusalak-future.mp4" type="Talk (MP4)" />
<mediafile file="sam-papusalak-future.mpg" type="Talk (MPG)" />
<flvfile file="sam-papusalak-future.flv" />
<mediaitem title="Deep Learning With Multiplicative Interactions">
Deep networks can be learned efficiently from unlabeled data. The layers of
representation are learned one at a time using a simple learning module,
called a "Restricted Boltzmann Machine" that has only one layer of latent
variables. The values of the latent variables of one module form the data for
training the next module. Although deep networks have been quite successful
for tasks such as object recognition, information retrieval, and modeling
motion capture data, the simple learning modules do not have multiplicative
interactions which are very useful for some types of data.
The talk will show how a third-order energy function can be factorized to
yield a simple learning module that retains advantageous properties of a
Restricted Boltzmann Machine such as very simple exact inference and a very
simple learning rule based on pair-wise statistics. The new module contains
multiplicative interactions that are useful for a variety of unsupervised
learning tasks. Researchers at the University of Toronto have been using this
type of module to extract oriented energy from image patches and dense flow
fields from image sequences. The new module can also be used to allow motions
of a particular style to be achieved by blending autoregressive models of
motion capture data.
<presentor>Dr. Geoff Hinton</presentor>
<thumbnail file="ghinton-deep-learning-thumb-small.jpg" />
<mediafile file="ghinton-deep-learning.avi" type="Talk (XviD)" />
<mediafile file="ghinton-deep-learning.ogg" type="Talk (Ogg/Theora)" />
<mediafile file="ghinton-deep-learning.mp4" type="Talk (MP4)" />
<mediafile file="ghinton-deep-learning.mpg" type="Talk (MPG)" />
<flvfile file="ghinton-deep-learning.flv" />
<mediaitem title="Wilderness Programming">
Paul Lutus describes his early Apple II software development days, conducted
from the far end of a 1200-foot power cord, in a tiny Oregon cabin. Paul
describes how he wrote a best-seller (Apple Writer) in assembly language,
while dealing with power outages, lightning storms and the occasional curious
Paul also describes his subsequent four-year solo around-the-world sail in a
31-foot boat. And be ready with your inquiries -- Paul will answer your
Paul Lutus has a wide background in science and technology. He designed
spacecraft components for the NASA Space Shuttle and created a mathematical
model of the solar system used during the Viking Mars lander program. Then, at
the beginning of the personal computer revolution, Lutus switched career paths
and took up computer science. His best-known program is "Apple Writer," an
internationally successful word processing program for the early Apple
<presentor>Paul Lutus</presentor>
<thumbnail file="plutus-wilderness-programming-thumb-small.jpg" />
<mediafile file="plutus-wilderness-programming.avi" type="Talk (XviD)" />
<mediafile file="plutus-wilderness-programming.ogg" type="Talk (Ogg/Theora)" />
<mediafile file="plutus-wilderness-programming.mp4" type="Talk (MP4)" />
<mediafile file="plutus-wilderness-programming.mpg" type="Talk (MPG)" />
<flvfile file="plutus-wilderness-programming.flv" />
<mediaitem title="The Best Algorithms are Randomized Algorithms">
For many problems, randomized algorithms are either the fastest algorithm or the
simplest algorithm; sometimes they even provide the only known algorithm.
Randomized algorithms have become so prevalent that deterministic algorithms
could be viewed as a curious special case. In this talk I will describe some
startling examples of randomized algorithms for solving some optimization
problems on graphs.
<presentor>Dr. Nick Harvey</presentor>
<thumbnail file="nick-harvey-random-thumb-small.jpg" />
<mediafile file="nick-harvey-random.avi" type="Talk (XviD)" />
<mediafile file="nick-harvey-random.ogg" type="Talk (Ogg/Theora)" />
<mediafile file="nick-harvey-random.mp4" type="Talk (MP4)" />
<mediafile file="nick-harvey-random.mpg" type="Talk (MPG)" />
<flvfile file="nick-harvey-random.flv" />
<mediaitem title="QIP=PSPACE">
The interactive proof system model of computation is a cornerstone of complexity
theory, and its quantum computational variant has been studied in quantum
complexity theory for the past decade. In this talk I will discuss an exact
characterization of the power of quantum interactive proof systems that I
recently proved in collaboration with Rahul Jain, Zhengfeng Ji, and Sarvagya
Upadhyay. The characterization states that the collection of computational
problems having quantum interactive proof systems consists precisely of those
problems solvable with an ordinary classical computer using a polynomial amount
of memory (or QIP = PSPACE in complexity-theoretic terminology). This
characterization implies the striking fact that quantum computing does not
provide any increase in computational power over classical computing in the
context of interactive proof systems.
</p><p>I will not assume that the audience for this talk has any familiarity with
either quantum computing or complexity theory; and to be true to the spirit of
the interactive proof system model, I hope to make this talk as interactive as
possible -- I will be happy to explain anything related to the talk that I can
that people are interested in learning about.
<presentor>Dr. John Watrous</presentor>
<thumbnail file="jwatrous-qip-thumb-small.jpg" />
<mediafile file="jwatrous-qip.avi" type="Talk (XviD)" />
<mediafile file="jwatrous-qip.ogg" type="Talk (Ogg/Theora)" />
<mediafile file="jwatrous-qip.mp4" type="Talk (MP4)" />
<mediafile file="jwatrous-qip.mpg" type="Talk (MPG)" />
<flvfile file="jwatrous-qip.flv" />
<mediaitem title="An Introduction to Vector Graphics Libraries with Cairo">
Cairo is an open source, cross platform, vector graphics library with the
ability to output to many kinds of surfaces, including PDF, SVG and PNG
surfaces, as well as X-Window, Win32 and Quartz 2D backends.
Unlike the raster graphics used with programmes and libraries such as The
Gimp and ImageMagick, vector graphics are not defined by grids of pixels,
but rather by a collection of drawing operations. These operations detail
how to draw lines, fill shapes, and even set text to create the desired
image. This has the advantages of being infinitely scalable, smaller in file
size, and simpler to express within a computer programme.
This talk will be an introduction to the concepts and metaphors used by
vector graphics libraries in general and Cairo in particular.
<presentor>Nathaniel Sherry</presentor>
<thumbnail file="nsasherr-cairo-thumb-small.jpg" />
<mediafile file="nsasherr-cairo.avi" type="Talk (XviD)" />
<mediafile file="nsasherr-cairo.ogg" type="Talk (Ogg/Theora)" />
<mediafile file="nsasherr-cairo.mp4" type="Talk (MP4)" />
<mediafile file="nsasherr-cairo.mpg" type="Talk (MPG)" />
<flvfile file="nsasherr-cairo.flv" />
<mediaitem title="Software Transactional Memory and Haskell">
Concurrency is hard. Well maybe not hard, but it sure is annoying to get right. Even the
simplest of synchronization tasks are hard to implement correctly when using synchronization
primitives such as locks and semaphores.
In this talk we explore what Software Transactional Memory (STM) is, what problems STM solves,
and how to use STM in Haskell. We explore a number of examples that show how easy STM is to use
and how expressive Haskell can be. The goal of this talk is to convince attendees that STM is
not only a viable synchronization solution, but superior to how synchronization is typically
done today.
<presentor>Brennan Taylor</presentor>
<thumbnail file="b4taylor-stm-thumb-small.jpg" />
<mediafile file="b4taylor-stm.avi" type="Talk (XviD)" />
<mediafile file="b4taylor-stm.ogg" type="Talk (Ogg/Theora)" />
<mediafile file="b4taylor-stm.mp4" type="Talk (MP4)" />
<mediafile file="b4taylor-stm.mpg" type="Talk (MPG)" />
<flvfile file="b4taylor-stm.flv" />
<mediaitem title="Programming Quantum Computers">
Raymond Laflamme is the director of the Institute for Quantum Computing at the
University of Waterloo and holds the Canada Research Chair in Quantum Information.
He will give a brief introduction to quantum computing and why it matters, followed
by a talk on programming quantum computers. This is followed by tours of IQC Labs.
<presentor>Dr. Raymond Laflemme and Various</presentor>
<thumbnail file="iqc1-thumb-small.jpg" />
<mediafile file="iqc1.avi" type="Talk (XviD)" />
<mediafile file="iqc1.ogg" type="Talk (Ogg/Theora)" />
<mediafile file="iqc1.mp4" type="Talk (MP4)" />
<mediafile file="iqc1.mpg" type="Talk (MPG)" />
<mediafile file="iqc2.avi" type="Quantum Key Distribution Lab (XviD)" />
<mediafile file="iqc2.ogg" type="Quantum Key Distribution Lab (Ogg/Theora)" />
<mediafile file="iqc2.mp4" type="Quantum Key Distribution Lab (MP4)" />
<mediafile file="iqc2.mpg" type="Quantum Key Distribution Lab (MPG)" />
<mediafile file="iqc3.avi" type="NMR Quantum Computer (XviD)" />
<mediafile file="iqc3.ogg" type="NMR Quantum Computer (Ogg/Theora)" />
<mediafile file="iqc3.mp4" type="NMR Quantum Computer (MP4)" />
<mediafile file="iqc3.mpg" type="NMR Quantum Computer (MPG)" />
<flvfile file="iqc1.flv" />
<mediaitem title="Functional Lexing and Parsing">
This talk will describe a non-traditional functional approach to the
classical problems of lexing (breaking a stream of characters into
"words" or tokens) and parsing (identifying tree structure in a stream
of tokens based on a grammar, e.g. for a programming language that
needs to be compiled or interpreted). The functional approach can
clarify and organize a number of algorithms that tend to be opaque in
their conventional imperative presentation. No prior background in
functional programming, lexing, or parsing is assumed.
<p>The slides for this talk can be found <a href="">here</a> as a pdf.
<presentor>Dr. Prabhakar Ragde</presentor>
<thumbnail file="pr-functional-lexing-parsing-thumb-small.jpg" />
<mediafile file="pr-functional-lexing-parsing.avi" type="XviD" />
<mediafile file="pr-functional-lexing-parsing.ogg" type="Ogg/Theora" />
<mediafile file="pr-functional-lexing-parsing.mp4" type="MP4" />
<mediafile file="pr-functional-lexing-parsing.mpg" type="MPG" />
<flvfile file="pr-functional-lexing-parsing.flv" />
<p>If you would like to contact Dr. Ragde check out his <a href="">website</a> or e-mail him at plragde at uwaterloo dot ca.</p>
<mediaitem title="Rapid Prototyping and Mathematical Art">
The combination of computer graphics, geometry, and rapid
prototyping technology has created a wide range of exciting
opportunities for using the computer as a medium for creative
expression. In this talk, I will describe the most popular
technologies for computer-aided manufacturing, discuss
applications of these devices in art and design, and survey
the work of contemporary artists working in the area (with a
focus on mathematical art). The talk will be primarily
non-technical, but I will mention some of the mathematical
and computational techniques that come into play.</p>
<p>The slides for this talk can be found <a href="">here</a> as a pdf.</p>
<presentor>Dr. Craig Kaplan</presentor>
<thumbnail file="kaplan-mathematical-art-thumb-small.jpg" />
<mediafile file="kaplan-mathematical-art.avi" type="XviD" />
<mediafile file="kaplan-mathematical-art.ogg" type="Ogg/Theora" />
<mediafile file="kaplan-mathematical-art.mp4" type="MP4" />
<mediafile file="kaplan-mathematical-art.mpg" type="MPG" />
<flvfile file="kaplan-mathematical-art.flv" />
<p>If you would like to contact Dr. Kaplan check out his <a href="">website</a> or e-mail him at csk at uwaterloo dot ca.</p>
<h2>Links and credits</h2>
<p>This talk included images of the work of a large number of talented
artists and researchers. I list them here and include links to
their work online. Everyone is listed by order of appearance; when
a credit appears to be missing, it's probably because the slides
include photographs of my own work or joint work with collaborators.
Thanks to all the artists who gave me permission to use photographs
of their work here.</p>
<li><a href="">Edmund Harriss</a>:
laser-cut business card</li>
<li><a href="">Dan Funderburgh</a>:
laser-cut papercuttings and laser-etched wood sculpture</li>
<li><a href="">Little Factory</a>:
laser-cut scarf</li>
<li><a href="">Wim Delvoye</a>:
laser-cut gothic vehicles</li>
<li><a href="">George Hart</a>:
modular kirigami, laser-cut acrylic and metal sculpture,
3D printed scupture</li>
<li><a href="">Fischer</a>: laser-cut
wooden lamp (the <a href="">lamp</a> can be seen on <a href=""></a>)</li>
<li><a href="">Georg Petchnigg</a>:
CNC sushi plate</li>
<li><a href="">Bathsheba Grossman</a>:
3D printed metal sculpture</li>
<li><a href="">Carlo Sequin</a>:
3D mathematical sculpture</li>
<li><a href="">Helaman Ferguson</a>:
sculpture in stone and metal</li>
<li><a href="">Vladimir Bulatov</a>:
3D printed metal sculpture</li>
<li><a href="">Rinus Roelofs</a>:
3D geometric sculpture, printed and rendered</li>
<li><a href="">Ergun Akleman</a>:
Sculpture and surface design. Note his downloadable
<a href="">TopMod</a> software</li>
<li><a href="">Emmanuel Lattes</a>: twisted toroidal sculpture</li>
<p>Here are a few additional links of interest to the audience of this
<li><a href=""></a>: Toronto's hackerspace.
The bought a disused laser cutter and refurbished it.</li>
<li>My knife cutter is the <a href="">QuicKutz Silhouette</a>. I bought mine online from <a href="">Scrapbooks by design</a> in Toronto.</li>
<li><a href="">Lazerit</a> is a laser cutting
service not far from the University of Waterloo campus.</li>
<li><a href=""></a> is one of a new
breed of CAM-meets-Web2.0 sites. You create and upload a design,
and can then order fabricated copies of that design in various
materials. You can also set up a shop where others can do the
<li>The <a href="">Fireball V90</a> is an inexpensive CNC router kit that would be fun for home hobby applications. For extra geek points, it has a mount designed to hold a dremel.</li>
<li>Evil Mad Scientist Laboratories created <a href="">CandyFab</a>, a (low resolution) 3D printer that produces edible candy as output.</li>
14 years ago
<li>The <a href="">reprap</a> Aims to design a 3D printer
capable of manufacturing a complete copy of itself.</li>
<li><a href="">Shapeways</a> is essentially
14 years ago
a 3D version of online 3D printing service
bureau where you can set up a shop to sell your work.</li>
<li>Bathsheba Grossman has her metal sculptures printed by
<a href="">Ex One's Prometal</a> service.</li>
<mediaitem title="More Haskell functional programming fun">
<presentor>Andrei Barbu</presentor>
<thumbnail file="abarbu2-thumb-small.jpg" />
<mediafile file="abarbu2.avi" type="XviD" />
<mediafile file="abarbu2.ogg" type="Ogg/Theora" />
<mediafile file="abarbu2.mp4" type="MP4" />
<mediafile file="abarbu2.mpg" type="MPG" />
<flvfile file="abarbu2.flv" />
<mediaitem title="Why you should care about functional programming with Haskell">
<presentor>Andrei Barbu</presentor>
<thumbnail file="abarbu1-thumb-small.jpg" />
<mediafile file="abarbu1.avi" type="XviD" />
<mediafile file="abarbu1.ogg" type="Ogg/Theora" />
<mediafile file="abarbu1.mp4" type="MP4" />
<mediafile file="abarbu1.mpg" type="MPG" />
<flvfile file="abarbu1.flv" />
<mediaitem title="Off-the-Record Messaging: Useful Security and Privacy for IM">
Instant messaging (IM) is an increasingly popular mode of communication
on the Internet. Although it is used for personal and private
conversations, it is not at all a private medium. Not only are all of
the messages unencrypted and unauthenticated, but they are all
routedthrough a central server, forming a convenient interception point
for an attacker. Users would benefit from being able to have truly
private conversations over IM, combining the features of encryption,
authentication, deniability, and forward secrecy, while working within
their existing IM infrastructure.
In this talk, I will discuss "Off-the-Record Messaging" (OTR), a widely
used software tool for secure and private instant messaging. I will
outline the properties of Useful Security and Privacy Technologies that
motivated OTR's design, compare it to other IM security mechanisms, and
talk about its ongoing development directions.
<presentor>Ian Goldberg</presentor>
<thumbnail file="ian-goldberg-otr-thumb-small.jpg" />
<mediafile file="ian-goldberg-otr.avi" type="XviD" />
<mediafile file="ian-goldberg-otr.ogg" type="Ogg/Theora" />
<mediafile file="ian-goldberg-otr.mp4" type="MP4" />
<mediafile file="ian-goldberg-otr.mpg" type="MPG" />
<flvfile file="ian-goldberg-otr.flv" />
Ian Goldberg is an Assistant Professor of Computer Science at the
University of Waterloo, where he is a founding member of the
Cryptography, Security, and Privacy (CrySP) research group. He holds a
Ph.D. from the University of California, Berkeley, where he discovered
serious weaknesses in a number of widely deployed security systems,
including those used by cellular phones and wireless networks. He also
studied systems for protecting the personal privacy of Internet users,
which led to his role as Chief Scientist at Zero-Knowledge Systems (now
known as Radialpoint), where he commercialized his research as the
Freedom Network.
<mediaitem title="Privacy by Design">
Globally, issues about information privacy in the marketplace have emerged in tandem with the dramatic and escalating increase in information stored
in electronic formats. Data mining, for example, can be extremely valuable for businesses, but in the absence of adequate safeguards, it can
jeopradize informational privacy. Dr. Ann Cavoukian talks about how to use technology to enhance privacy. Some of the technologies discussed
included instant messaging, RFID tags and Elliptical Curve Cryptography (ECC). Then Dr. Cavoukian explained the “7 Privacy – Embedded Laws” followed
by a discussion on a biometrics solution to encryption.
<presentor>Dr. Ann Cavoukian</presentor>
<thumbnail file="privacy-thumb-small.jpg" />
16 years ago
<mediafile file="privacy.avi" type="XviD" />
<mediafile file="privacy.ogg" type="Ogg/Theora" />
<mediafile file="privacy.mp4" type="MP4" />
<mediafile file="privacy.mpg" type="MPG" />
<flvfile file="privacy.flv" />
Dr. Ann Cavoukian, as the Information and Privacy Commissioner, oversees the operations of Ontario's freedom of information and protection of
privacy laws, which apply to both provincial and municipal government organizations. She serves as an officer of the legislature, independent of the
government of the day. Ann joined the Information and Privacy Commission in 1987 as its first Director of Compliance and was appointed Assistant
Commissioner in 1990, responsible for the protection of privacy and compliance with the Freedom of Information and Protection of Privacy Acts. Prior
to her work at the Commission, Ann headed the Research Services Branch of the Ministry of the Attorney General. Ann received her M.A. and Ph.D. in
Psychology from the University of Toronto, where she specialized in criminology and lectured on psychology and the criminal justice system. Ann
speaks extensively on the importance of privacy around the world. Her published works include a recent book on privacy called "Who Knows:
Safeguarding Your Privacy in a Networked World."
<mediaitem title="C++0x - An Overview">
A good programming language is far more than a simple collection of
features. My ideal is to provide a set of facilities that smoothly work
together to support design and programming styles of a generality beyond
my imagination. Here, I briefly outline rules of thumb (guidelines,
principles) that are being applied in the design of C++0x. Then, I
present the state of the standards process (we are aiming for C++09) and
give examples of a few of the proposals such as concepts, generalized
initialization, being considered in the ISO C++ standards committee.
Since there are far more proposals than could be presented in an hour,
I'll take questions.
Dr. Bjarne Stroustrup is the original designer and implementer of the
C++ Programming Language.
<presentor>Dr. Bjarne Stroustrup</presentor>
<thumbnail file="stroustrup-thumb-small.jpg" />
<mediafile file="stroustrup.avi" type="XviD" />
<mediafile file="stroustrup.ogg" type="Ogg/Theora" />
<mediafile file="stroustrup.mp4" type="MP4" />
<mediafile file="stroustrup.mpg" type="MPG" />
<flvfile file="stroustrup.flv" />
<li>Do you think you'll ever design a new language from scratch?</li>
<li>How long after the standard is out do you expect to see a production compiler?</li>
<li>Is it possible to do garbage collection cleanly and efficiently in C++?</li>
<li>How soon after you created C++ did you see it start to take over the industry?</li>
<li>Is there any particular naming convention you subscribe to?</li>
<li>What's your opinion about the Microsoft implementation of C++?</li>
<mediaitem title="PMAMC&amp;OC SASMS - Spring 2007">
<presentor>PMClub Various Members</presentor>
<thumbnail file="pmc-sasms-spring-2007-thumb-small.jpg" />
<mediafile file="pmc-sasms-spring-2007.avi" type="XviD" size="643M" />
<mediafile file="pmc-sasms-spring-2007.ogg" type="Ogg/Theora" size="598M" />
<mediafile file="pmc-sasms-spring-2007.mp4" type="MP4" size="625M" />
<mediafile file="pmc-sasms-spring-2007.mpg" type="MPG" size="641M" />
<flvfile file="pmc-sasms-spring-2007.flv" />
<mediaitem title="Copyright vs Community in the Age of Computer Networks">
Copyright developed in the age of the printing press, and was designed
to fit with the system of centralized copying imposed by the printing
press. But the copyright system does not fit well with computer networks,
and only draconian punishments can enforce it.
The global corporations that profit from copyright are lobbying for
draconian punishments, and to increase their copyright powers, while
suppressing public access to technology. But if we seriously hope to serve
the only legitimate purpose of copyright -- to promote progress, for the
benefit of the public -- then we must make changes in the other
This talk by Richard M. Stallman is broken into two parts: the main talk
and the question and answer sessions following the talk. Both are
available in only Ogg/Theora format in keeping with Stallman's wishes. They
are available under the <a href="">
Creative Commons NoDerivs 1.0</a> license.
<presentor>Richard M. Stallman</presentor>
Download the question and answers section for answers to questions such as:
<li> What do you do when no free alternatives for a proprietary program exist? </li>
<li> If we are to treat works used for practical purposes differently from those used for entertainment, how do you treat works such as video games that fall in both categories? </li>
<li> If most of the computing industry and the US Copyright Board don't disagree with your views on copyright, how come no one has gone to change things? </li>
<thumbnail file="rms-qa-thumb-small.jpg" />
<mediafile file="rms-talk.ogg" type="Talk (Ogg/Theora)" size="687M" />
<mediafile file="rms-qa.ogg" type="Q&amp;A (Ogg/Theora)" size="225M" />
<mediaitem title="Usability in the Wild">
What is the typical monitor resolution of a GIMP user? How many monitors
do they have? What size images do they work on? How many layers are in
their images? The answers to these questions are generally unknown: no
means currently exist for open source applications to collect usage data.
In this talk, Professor Michael Terry will present ingimp, a version of
GIMP that has been instrumented to automatically collect usage data from
real-world users. Prof. Terry will discuss ingimp's design, the type of
data we collect, how we make the data available on the web, and initial
results that begin to answer the motivating questions. ingimp can be found
15 years ago
The slides from the talk are available here: <a href="">ingimp_uw_csc_talk_6_27_2007.pdf</a>.
<presentor>Dr. Michael Terry</presentor>
<thumbnail file="mterry2-thumb-small.jpg" />
<mediafile file="mterry2.avi" type="XviD" size="521M" />
<mediafile file="mterry2.ogg" type="Ogg/Theora" size="535M" />
<mediafile file="mterry2.mp4" type="MP4" size="509M" />
<mediafile file="mterry2.mpg" type="MPG" size="520M" />
<flvfile file="mterry2.flv" preview="mterry2.png" />
<mediaitem title="Ralph Stanton 40th Anniversary of Math Faculty Talk">
Ralph Stanton reflects on the founding of the University of
Waterloo Math Faculty.
<presentor>Ralph Stanton</presentor>
<thumbnail file="ralph-stanton-thumb-small.jpg" />
<mediafile file="ralph-stanton.avi" type="XviD" />
<mediafile file="ralph-stanton-xvid.avi" type="DivX" />
<mediafile file="ralph-stanton.ogg" type="Ogg" />
<mediafile file="ralph-stanton.mpg" type="MPG" />
<flvfile file="ralph-stanton.flv" />
17 years ago
<mediaitem title="The Free Software Movement and GNULinux Operating System, a talk by Richard Stallman at UCSD">
Richard Stallman will speak about the goals and philosophy of the Free
Software Movement, and the status and history the GNU Operating System,
which in combination with the kernel Linux is now used by tens of millions
of users world-wide.
Richard Stallman launched the development of the GNU operating system in
1984. GNU is free software: everyone has the freedom to copy it and
redistribute it, as well as to make changes either large or small. The
GNU/Linux system, basically the GNU operating system with Linux added, is
used on tens of millions of computers today.
"The reason I care especially, is that there is a philosophy associated
with the GNU project, and this philosophy is actually the reason why there
is a system -- and that is that free software is not just convenient and
not just reliable.... More important than convenience and reliability is
freedom -- the freedom to cooperate. What I'm concerned about is not
individual people or companies so much as the kind of way of life that we
have. That's why I think it's a distraction to think about fighting
Stallman has received the ACM Grace Hopper Award, a MacArthur Foundation
fellowship, the Electronic Frontier Foundation's Pioneer award, and the
Takeda Award for Social/Economic Betterment, as well as several honorary
The Question and Answer session (starting shortly after the hour and half
mark) posed a number of interesting questions including, "Do you support
the Creative Commons license?" and "Can I use ATI and NVIDIA drivers
because Mesa isn't nearly as complete?".
The talk is only available in Ogg Theora, in keeping with Richard
Stallman's wishes.
<presentor>Richard M. Stallman</presentor>
<thumbnail file="audio-file.png" />
<mediafile file="rms_ucsd.ogg" type="Ogg Theora" size="148MB" />
17 years ago
<mediaitem title="Introduction to 3-d Graphics">
A talk for those interested in 3-dimensional graphics but unsure of where
to start. Covers the basic math and theory behind projecting 3-dimensional
polygons on screen, as well as simple cropping techniques to improve
efficiency. Translation and rotation of polygons will also be discussed.
<presentor>The Prof</presentor>
<thumbnail file="the-prof-graphics-thumb-small.jpg" />
<mediafile file="the-prof-graphics.avi" type="DivX" size="272M" />
<mediafile file="the-prof-graphics-xvid.avi" type="XviD" size="272M" />
<mediafile file="the-prof-graphics.mpg" type="MPG" size="272M" />
<mediafile file="the-prof-graphics.ogg" type="Ogg/Theora" size="274M"/>