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.

    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.

    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.

    Sam Pasupalak

    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.

    Dr. Geoff Hinton

    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 bear.

    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 questions.

    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 computers.

    Paul Lutus

    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.

    Dr. Nick Harvey

    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.

    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.

    Dr. John Watrous

    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.

    Nathaniel Sherry

    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.

    Brennan Taylor

    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.

    Dr. Raymond Laflemme and Various

    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.

    The slides for this talk can be found here as a pdf.

    Dr. Prabhakar Ragde

    Contact

    If you would like to contact Dr. Ragde check out his website or e-mail him at plragde at uwaterloo dot ca.

    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.

    The slides for this talk can be found here as a pdf.

    Dr. Craig Kaplan

    Contact

    If you would like to contact Dr. Kaplan check out his website or e-mail him at csk at uwaterloo dot ca.

    Links and credits

    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.

    Resources

    Here are a few additional links of interest to the audience of this talk.

    • hacklab.to: Toronto's hackerspace. The bought a disused laser cutter and refurbished it.
    • My knife cutter is the QuicKutz Silhouette. I bought mine online from Scrapbooks by design in Toronto.
    • Lazerit is a laser cutting service not far from the University of Waterloo campus.
    • ponoko.com 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 same.
    • The Fireball V90 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.
    • Evil Mad Scientist Laboratories created CandyFab, a (low resolution) 3D printer that produces edible candy as output.
    • The reprap Aims to design a 3D printer capable of manufacturing a complete copy of itself.
    • Shapeways is essentially a 3D version of ponoko.com-an online 3D printing service bureau where you can set up a shop to sell your work.
    • Bathsheba Grossman has her metal sculptures printed by Ex One's Prometal service.

    TODO

    Andrei Barbu

    TODO

    Andrei Barbu

    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.

    Ian Goldberg

    Bio

    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.

    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.

    Dr. Ann Cavoukian

    Bio

    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."

    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.

    Dr. Bjarne Stroustrup

    Q&A

    • Do you think you'll ever design a new language from scratch?
    • How long after the standard is out do you expect to see a production compiler?
    • Is it possible to do garbage collection cleanly and efficiently in C++?
    • How soon after you created C++ did you see it start to take over the industry?
    • Is there any particular naming convention you subscribe to?
    • What's your opinion about the Microsoft implementation of C++?
    PMClub Various Members

    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 direction.

    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 Creative Commons NoDerivs 1.0 license.

    Richard M. Stallman

    Q&A

    Download the question and answers section for answers to questions such as:

    • What do you do when no free alternatives for a proprietary program exist?
    • 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?
    • 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?

    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 at http://www.ingimp.org.

    The slides from the talk are available here: ingimp_uw_csc_talk_6_27_2007.pdf.

    Dr. Michael Terry

    Ralph Stanton reflects on the founding of the University of Waterloo Math Faculty.

    Ralph Stanton

    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 Microsoft."

    Biography: 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 doctorates.

    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.

    Richard M. Stallman

    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.

    The Prof

    A discussion of software start-ups founded by UW students and what they did that helped them grow and what failed to help. In order to share the most insights and guard the confidences of the individuals involved, none of the companies will be identified.

    Larry Smith

    For decades, mainstream parallel processing has been thought of as inevitable. Up until recent years, however, improvements in manufacturing processes and increases in clock speed have provided software with free Moore's Law-scale performance improvements on traditional single-core CPUs. As per-core CPU speed increases have slowed to a halt, processor vendors are embracing parallelism by multiplying the number of cores on CPUs, following what Graphics Processing Unit (GPU) vendors have been doing for years. The Multi-core revolution promises to provide unparallelled increases in performance, but it comes with a catch: traditional serial programming methods are not at all suited to programming these processors and methods such as multi-threading are cumbersome and rarely scale beyond a few cores. Learn how, with hundreds of cores in desktop computers on the horizon, a local software company is looking to revolutionize the way software is written to deliver on the promise multi-core holds.

    Stefanus Du Toit

    The ReactOS operating system has been in development for over eight years and aims to provide users with a fully functional and Windows-compatible distribution under the GPL license. ReactOS comes with its own Windows 2003-based kernel and system utilities and applications, resulting in an environment identical to Windows, both visually and internally.

    More than just an alternative to Windows, ReactOS is a powerful platform for academia, allowing students to learn a variety of skills useful to software testing, development and management, as well as providing a rich and clean implementation of Windows NT, with a kernel compatible to published internals book on the subject.

    This talk will introduce the ReactOS project, as well as the various software engineering challenges behind it. The building platform and development philosophies and utilities will be shown, and attendees will grasp the vast amount of effort and organization that needs to go into building an operating system or any other similarly large project. The speaker will gladly answer questions related to his background, experience and interests and information on joining the project, as well as any other related information.

    Slides from the talk are available here.

    Biography

    Alex Ionescu is currently studying in Software Engineering at Concordia University in Montreal, Quebec and is a Microsoft Technical Student Ambassador. He is the lead kernel developer of the ReactOS Project and project leader of TinyKRNL. He regularly speaks at Linux and Open Source conferences around the world and will be a lecturer at the 8th International Free Software Forum in Brazil this April, as well as providing hands-on workshops and lectures on Windows NT internals and security to various companies.

    Alex Ionescu

    Bill Gates discusses the software and computer industry, and how Microsoft has contributed. Gates also discusses his views on the future of the computing industry. The talk was recorded in 1989 but was only recently digitized.

    Topics include:

    • The start and history of the microcomputer industry
    • Microsoft BASIC and the Altair 880 computer
    • The transition from 8-bit to 16-bit computers
    • Microsoft's history with IBM
    • 640k memory barrier and 16-bit architectures
    • 32-bit 386 and 486 architectures
    • RISC and multi-processor machines
    • EGA graphics and WYSIWYG editors
    • Decreasing cost of memory, harddisks and hardware in general
    • The importance and future of the mouse
    • Object-oriented programming
    • MS-DOS and OS/2
    • Multi-threaded and multi-application systems
    • Synchronization in multi-threaded applications
    • Diskette-based software
    • UNIX standardization and POSIX
    • History of the Macintosh and Microsoft' involvement
    • Involvement of Xerox in graphical user interfaces
    • Apple vs. Microsoft lawsuit regarding user interfaces
    • OS/2 future as a replacement for MS-DOS
    • Microsoft Office on Macintosh
    • Thin/dumb clients
    • Compact discs
    • Multimedia applications
    • Gates' current role at Microsoft

    The following picture was taken after the talk (click for higher-res).

    Bill Gates

    Do spam filters work? Which is the best one? How might filters be improved? Without standards, one must depend on unreliable evidence, such as subjective impressions, testimonials, incomparable and unrepeatable measurements, and vendor claims for the answers to these questions.

    You might think that your spam filter works well and couldn't be improved. Are you sure? You may think that the risk of losing important mail outweighs the benefit of using a filter. Could you convince someone who holds the other opinion? If I told you that my filter was 99-percent accurate, would you believe me? Would you know what I meant? Would you be able to translate that 99-percent into the risk of losing an important message?

    Gord Cormack talks about the science, logistics, and politics of Spam Filter Evaluation.

    Dr. Gord Cormack

    Simon Law leads the Quality teams for Ubuntu, a free-software operating system built on Debian GNU/Linux. As such, he leads one of the largest community-based testing efforts for a software product. This does get a bit busy sometimes.

    In this talk, we'll be exploring how the Internet is changing how software is developed. Concepts like open source and technologies like message forums are blurring the lines between producer and consumer. And this melting pot of people is causing people to take note, and changing the way they sling code.

    The Computer Science Club would like to thank the CS-Commons Committee for co-sponsoring this talk.

    Simon Law

    Could you write a good image recognizer for a 100 MHz mobile phone processor with 1 MB heap, 320x240 image, on a poorly-optimized Java stack? It needs to locate and read two-dimensional barcodes made up of square modules which might be no more than a few pixels in size. We had to do that in order to establish Semacode, a local start up company that makes a software barcode reader for cell phones. The applications vary from ubiquitous computing to advertising. Simon Woodside (founder) will discuss what it's like to start a business and how the imaging code works.

    Simon Woodside

    Eric LaForest delivers a crash-course on modern stack computing, the Forth programming language, and some projects of his own. Stack systems have faster procedure calls and reduced complexity (shorter pipeline, simpler compilation) relative to their conventional counterparts, as well as more consistent performance, which is very important for real-time systems. Many consider stack-based architecture's crowning feature, however, to be the unrivalled price-to-performance ratio.

    Note: the slides are hard to make out in the video, so make sure to download the slides as well.

    Eric LaForest

    A discussion of how software creators can identify application opportunities that offer the promise of great social and commercial significance. Particular attention will be paid to the challenge of acquiring cross domain knowledge and setting up effective collaboration.

    Larry Smith
    Larry Smith

    Rico Mariani, (BMath CS/EEE 1988) now an (almost) 18 year Microsoft veteran but then a CSC president comes to talk to us about the evolution of software tools for microcomputers. This talk promises to be a little bit about history and perspective (at least from the Microsoft side of things) as well as the evolution of software engineers, different types of programmers and their needs, and what it's like to try to make the software industry more effective at what it does, and sometimes succeed! Particularly illuminating are his responses to advocates of free/open-source software.

    Rico Mariani