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.
old-website/events.xml

6465 lines
282 KiB

<?xml version='1.0'?>
<!DOCTYPE eventdefs SYSTEM "csc.dtd" [<!ENTITY mdash "&#x2014;">]>
21 years ago
<eventdefs>
<!-- Winter 2012 -->
<eventitem date="2012-03-08" time="5:30 PM" room="MC 3003" title="UNIX 102">
<short>
<p><i>by Calum T. Dalek</i>. The Computer Science Club will be running the
second installment of our introductory UNIX tutorials for the term. We
will be covering topics intended to show off the development-friendliness of
the UNIX computing environment: "real" document editors, development tools,
bash scripting, and version control.
</p>
</short>
<abstract>
<p>New to the UNIX computing environment? If you seek an introduction, look
no further. We will be covering more advanced topics in the second installment
of our introductory tutorials, that will help you become a more effective
developer.
</p>
<p>We will be introducing "real" document editors, bash scripting, and
version control. We'll prove to you how much more efficient you can develop
with these tools and teach you how to do it for yourself. It will save you hours
of work!
</p>
</abstract>
</eventitem>
<eventitem date="2012-03-02" time="7:00 PM" room="MC 3001" title="OpenCL Code Party">
<short>
<p><i>by Calum T. Dalek</i>. The University of Waterloo Computer Science Club and AMD's OpenCL programming competition comes to a close, as the contest ends at midnight and prizes are awarded! Open submissions will be judged, so make sure to come out and watch.
</p>
</short>
<abstract>
<p>The University of Waterloo Computer Science Club and AMD's <a href="http://csclub.uwaterloo.ca/opencl">OpenCL programming competition</a> comes to a close, as the contest ends at midnight and prizes are awarded! Open submissions will be judged, so make sure to come out and watch.
</p>
</abstract>
</eventitem>
<eventitem date="2012-03-07" time="5:30 PM" room="PHY 150" title="Feynman Messenger Lecture Series">
<short>
<p><i>by Calum T. Dalek</i>. Join the Computer Science Club and PhysClub every Wednesday evening for the rest of the term for our five screenings of the classic 1964 Messenger Lecture Series by Richard Feynman in PHY 150. Dinner provided!
</p>
</short>
<abstract>
<p>The Physics Club and the Computer Science Club are proud to present the 1964 Feynman Messenger Lecture Series in PHY 150 on Wednesday evenings at 5:30 PM. The screenings will be taking place as follows (please note times and dates):</p>
<ul>
<li><b>Feb. 29, 5:30-6:30 PM:</b> <i>Law of Gravitation: An Example of Physical Law</i></li>
<li><b>Mar. 7, 5:30-7:30 PM:</b> <i>The Relation of Mathematics and Physics</i> and <i>The Great Conservation Principles</i> (double feature)</li>
<li><b>Mar. 14, 5:30-6:30 PM:</b> <i>Symmetry in Physical Law</i></li>
<li><b>Mar. 21, 5:30-7:30 PM:</b> <i>The Distinction of Past and Future</i> and <i>Probability and Uncertainty: The Quantum Mechanical View</i> (double feature)</li>
<li><b>Mar. 28, 5:30-6:30 PM:</b> <i>Seeking New Laws</i></li>
</ul>
<p>Dinner will be provided, so come on out, relax in the comfy PHY 150 theatre, and enjoy. Hope to see you there!</p>
</abstract>
</eventitem>
<eventitem date="2012-02-16" time="7:00 PM" room="MC 3001" title="OpenCL Introduction">
<short><p><i>by Calum T. Dalek</i>. The University of Waterloo Computer Science Club and AMD are running an OpenCL programming competition. If you're interested in writing massively parallel software on the OpenCL platform, come out and join us for our introductory code party!</p></short>
<abstract><p>The University of Waterloo Computer Science Club and AMD are running an <a href="http://csclub.uwaterloo.ca/opencl">OpenCL programming competition.</a> If you're interested in writing massively parallel software on the OpenCL platform, come out and join us for our introductory code party!</p>
<p></p>
</abstract>
</eventitem>
<eventitem date="2012-02-09" time="5:00 PM" room="MC 3003" title="UNIX 101">
<short><p><i>by Calum T. Dalek</i>. New to the Unix computing environment? If you seek an introduction, look no further. We will be holding a series of tutorials on using Unix, beginning with Unix 101 this upcoming Thursday. Topics that will be covered include basic interaction with the shell and the motivations behind using it, and an introduction to compilation. You'll have to learn this stuff in CS 246 anyways, so why not get a head start!</p></short>
<abstract><p>New to the Unix computing environment? If you seek an introduction, look no further. We will be holding a series of tutorials on using Unix, beginning with Unix 101 this upcoming Thursday. Topics that will be covered include basic interaction with the shell and the motivations behind using it, and an introduction to compilation. You'll have to learn this stuff in CS 246 anyways, so why not get a head start!</p>
<p>If you're interested in attending, make sure you can log into the Macs on the third floor, or show up to the CSC office (MC 3036) 20 minutes early for some help. If you're already familiar with these topics, don't hesitate to come to Unix 102, planned to be held after Reading Week.</p>
</abstract>
</eventitem>
<eventitem date="2012-02-07" time="6:00 PM" room="MC 4045" title="Algorithms Talk">
<short><p><i>by Victor Fan</i>. Join Victor Fan for his talk, intended for all second-year math students with a solid first-year background. Even if you are a first-year or a seasoned veteran, you will probably still take home something new, so please come out to enjoy the talk! Refreshments will be served.</p></short>
<abstract><p>Are you interested in algorithms? What is an algorithm anyway? We will discuss two or three neat problems with very elegant answers. Some of these answers are actually fast, and some will result in a proof that the problem is NP-complete. (What does that mean?) We will also discuss the motivating thoughts that led us to the solutions.</p>
<p>Join Victor Fan for his talk, intended for all second-year math students with a solid first-year background. Even if you are a first-year or a seasoned veteran, you will probably still take home something new, so please come out to enjoy the talk! Refreshments will be served.</p></abstract>
</eventitem>
<eventitem date="2012-01-27" time="6:30 PM" room="Math CnD" title="Code Party 0">
<short><p><i>by Calum T. Dalek</i>. The Computer Science Club is running the first code party of the term! Come join us and hack on open source software, your own projects, or whatever comes up. Everyone is welcome; please bring your friends. There will be foodstuffs and sugary drinks available for your hacking pleasure.</p></short>
<abstract><p>The Computer Science Club is running the first code party of the term! Come join us and hack on open source software, your own projects, or whatever comes up. Everyone is welcome; please bring your friends. There will be foodstuffs and sugary drinks available for your hacking pleasure.</p></abstract>
</eventitem>
<eventitem date="2012-01-12" time="4:30 PM" room="Comfy Lounge" title="Elections">
<short>
<p>CSC Elections have begun for the Winter 2012 term, nominations are open!</p>
</short>
<abstract>
<p>It's elections time again! On Thursday January 12th at 4:30PM, come to the Comfy Lounge
on the 3rd floor of the MC to vote in this term's President, Vice-President, Treasurer
and Secretary. The sysadmin, librarian and office manager will also be chosen at this time.</p>
<p>Nominations are open until 4:30PM on Wednesday January 11th, and can be
written on the CSC office whiteboard (yes, you can nominate yourself). All CSC members
who have paid their Mathsoc fee can vote and are invited to drop by.
You may also send nominations to the <a href="mailto:cro@csclub.uwaterloo.ca">
Chief Returning Officer</a>. A full list of candidates will be posted
when nominations close.</p>
<p>Good luck to our candidates!</p>
</abstract>
</eventitem>
12 years ago
<!-- Fall 2011 -->
<eventitem date="2011-11-18" time="7:00 PM" room="Comfy Lounge" title="CSC Open Data Code Party">
<short><p><i>by Calum T. Dalek</i>. The Computer Science Club is teaming up with the UW Open Data Initiative to bring you our third code party of the term! Everyone is welcome; please bring your friends. There will be foodstuffs and sugary drinks available for your hacking pleasure.</p></short>
<abstract><p> We're teaming up with the UW Open Data Initiative to host our next code party on Friday, November 18 at 7PM in the MC Comfy Lounge.</p>
<p>As always, you're welcome to work on your own projects, but we'll be hacking on some open data related projects:
<ol>
<li>Design and build UW APIs.</li>
We're looking for API design experts to bring scalable API designs to the party. At the party, we'll work on implementing these designs. The APIs that you build will be used by everyone to access the university data made available by the Open Data Initiative.
<li>Applications using university data that is currently available.</li>
</ol>
</p>
<p>If you'd like to discuss your ideas for these proposed projects, check out the newsgroup, uw.csc</p></abstract>
</eventitem>
<eventitem date="2011-11-12" time="7:30 AM" room="Davis Centre" title="CSC goes to Design Our Tomorrow">
<short><p><i>by Calum T. Dalek</i>. The Computer Science Club has a limited number of tickets available for the <a href="http://designourtomorrow.com/">Design Our Tomorrow Conference</a> at the University of Toronto on Saturday, November 12, 10:00 - 16:30. See event information for ticket details.</p></short>
<abstract><p>
The Computer Science Club has tickets available for the Design Our Tomorrow Conference at the University of Toronto on Saturday, November 12, 10:00 - 16:30, and would like to invite you to attend. The DOT Conference is a TED-style event geared towards students in high school, undergraduate, and graduate studies. The goal of the event is to inspire young people to create, innovate, better themselves, and in the process, better the world. The conference is free for students and is valued at $500 a ticket for non-students. For more details about the conference, visit <a href="http://designourtomorrow.com/">http://designourtomorrow.com/</a>.</p>
<p>Tickets have been reserved for the CSC, and transportation to the conference has been funded by the David R. Cheriton School of Computer Science; a $5 deposit is required to secure a seat on the bus, which will be refunded to attendees upon departure. To sign up, visit the CSC office at MC 3036/3037 with exact change. You will need to provide your full name, e-mail, and student ID number. Please note that students who have already registered for the conference *should not* try to register through the CSC. For more details, visit the CSC website at <a href="http://csclub.uwaterloo.ca/">http://csclub.uwaterloo.ca/</a>.</p>
<p>This event is not restricted to CSC members&mdash;any student is free to attend. Tickets are very limited, so please sign up as soon as possible.</p>
<p>On the morning of November 12, attendees should meet in front of the Davis Center at 7:30 am. The bus will be leaving promptly at 8:00 am, so please arrive no later than 7:30 so we can process refunds and depart on time.</p>
<p>We hope that you will join us.
</p></abstract>
</eventitem>
<eventitem date="2011-10-24" time="4:30 PM" room="MC 3003" title="UNIX 102: Tools in the UNIX Environment">
<short><p><i>by Calum T. Dalek</i>. The next installment in the CS Club's popular Unix tutorials UNIX 102 introduces powerful text editing tools for programming and document formatting.
</p></short>
<abstract><p>Unix 102 is a follow up to Unix 101, requiring basic knowledge of the shell. If you missed Unix 101 but still know your way around you should be fine. Topics covered include: "real" editors, text processing, navigating a multiuser Unix environment, standard tools, and more. If you aren't interested or feel comfortable with these tasks, watch out for Unix 103 and 104 to get more depth in power programming tools on Unix.</p></abstract>
</eventitem>
<eventitem date="2011-10-21" time="7 PM" room="Comfy Lounge" title="Code Party 2">
<short>
<p><i>by Calum T. Dalek</i>. The Computer Science Club is having our second code party of the term! Everyone is welcome; please bring your friends. There will be foodstuffs and sugary drinks available for your hacking pleasure.</p>
</short>
<abstract>
<p>
The Computer Science Club is having our second code party of the term! Everyone is welcome; please bring your friends. There will be foodstuffs and sugary drinks available for your hacking pleasure.
</p>
<p>
There will be 3 more code parties this term.
</p>
</abstract>
</eventitem>
<eventitem date="2011-10-13" time="6:30 PM" room="MC 4020" title="How Browsers Work">
<short>
<p><i>by Ehsan Akhgari</i>. Veteran Mozilla engineer Ehsan Akhgari will present a talk on the internals of web browsers. The material will range from the fundamentals of content rendering to the latest innovations in browser design. Click on the talk title for a full abstract.</p>
</short>
<abstract>
<p>
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
ago.
Bio of the speaker:
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.
</p>
<p>
There will be 4 more code parties this term.
</p>
</abstract>
</eventitem>
<eventitem date="2011-09-30" time="7 PM" room="Comfy Lounge" title="Code Party 1">
<short>
<p><i>by Calum T. Dalek</i>. The Computer Science Club is having our first code party of the term! The theme for this code party will be collaborative development. We'll present several ideas of small projects to work on for the unexperienced. Everyone is welcome; please bring your friends! There will be foodstuffs and sugary drinks available for your hacking pleasure.</p>
</short>
<abstract>
<p>
The Computer Science Club is having our first code party of the term! The theme for this code party will be collaborative development. We'll present several ideas of small projects to work on for the unexperienced. Everyone is welcome; please bring your friends! There will be foodstuffs and sugary drinks available for your hacking pleasure.
</p>
<p>
There will be 4 more code parties this term.
</p>
</abstract>
</eventitem>
<eventitem date="2011-09-29" edate="2011-09-29" time="4:00 PM" etime="5:30 PM" room="MC 3004" title="UNIX 101: An Introduction to the Shell">
<short>
<p><i>by Calum T. Dalek</i>. New to Unix? No problem, we'll teach you to power use circles around your friends!</p>
</short>
<abstract>
<p>Unix 101 is the first in a series of tutorials on using Unix. This tutorial will present an introduction to the Unix shell environment, both on the student servers and on other Unix environments. Topics covered include: using the shell, both basic interaction and more advanced topics like scripting and job control, the filesystem and manipulating it, and secure shell. If you feel you're already familiar with these topics, don't hesitate to come to Unix 102 to learn about documents, editing, and other related tasks, or watch out for Unix 103, 104, and 201 that get much more in depth with power tools and software authoring on Unix. </p>
</abstract>
</eventitem>
12 years ago
<eventitem date="2011-09-19" edate="2011-09-19" time="4:30 PM" etime="5:30 PM" room="Comfy Lounge" title="Elections">
<short>
<p>
Club elections. See related news items for details.
</p>
</short>
<abstract>
Club elections. See related news items for details.
</abstract>
</eventitem>
<!-- Spring 2011 -->
12 years ago
<eventitem date="2011-07-29" time="6 PM" room="home of askhader, see abstract" title="CTRL-D">
<short>
<p>
The end of another term is here, and so we're having our End-of-Term dinner.
Everybody's welcome to come to CTRL-D. We are running this like a potluck, so bringing food is suggested.
</p>
</short>
<abstract>
<a href="http://csclub.uwaterloo.ca/~askhader/">askhader's</a> house is at: <br/>
9 Cardill Cresent<br/>
Waterloo, ON<br/>
</abstract>
</eventitem>
<eventitem date="2011-07-22" time="7 PM" room="Comfy Lounge" title="Code Party 3">
<short>
<p>
The final Code Party of the term is here! Come hack on some code,
solve some puzzles, and have some fun. The event starts in the evening and will run
all night. You can show up for any portion of it. You should bring a laptop, and
probably have something in mind to work on, though you're welcome with neither.
</p>
<p>
Snacks will be provided. Everyone is welcome.
</p>
<p>
Please note this date is postponed from the originally scheduled date due to
12 years ago
conflicts with <a href="http://www.kitchenerribandbeerfest.com/">Kitchener Ribfest &amp; Craft Beer Show</a>
</p>
</short>
</eventitem>
<eventitem date="2011-07-20" time="4:30 PM" room="MC 2038" title="An Introduction to Steganography">
<short>
<p>
As part of the CSC member talks series, Yomna Nasser will be presenting an introduction to steganography.
12 years ago
Steganography is the act of hiding information such that it can only be found by its intended recipient.
It has been practiced since ancient Greece, and is still in use today.
</p>
<p>
This talk will include an introduction to the area, history, and some basic techniques for hiding information
and detecting hidden data. There will be an overview of some of the mathematics involved, but nothing too
rigorous.
</p>
</short>
</eventitem>
12 years ago
<eventitem date="2011-07-09" time="4 PM to 10PM" room="Columbia Lake Firepit"
title="CSC Goes Outside">
<short> <p> Do you like going outside? Are you
vitamin-D deficient from being in the MC too long? Do you think
marshmallows, hotdogs, and fire are a delicious combination? </p>
<p> If so, you should join us as the CSC is going outside! </p>
<p> Around 4PM, we're going to Columbia Lake for some outdoor fun.
We'll have Frisbees, kites, snacks, and some drinks. We'll be
sticking around until dusk, when we're going to have a campfire
with marshmallows and hotdogs. We plan to be there until 10PM, but
of course you're welcome to come for any subinterval. </p>
</short>
</eventitem>
<eventitem date="2011-07-04" time="1:30 PM" room="MC 5158" title="Our Troubles with Linux and Why You Should Care">
<short>
<p>
A joint work between Professors Tim Brecht, Ashif Harji, and
Peter Buhr, this talk describes experiences using the Linux
kernel as a platform for conducting performance evaluations.
</p>
</short>
<abstract>
<p>
Linux provides researchers with a full-fledged operating system that is
widely used and open source. However, due to its complexity and rapid
development, care should be exercised when using Linux for performance
experiments, especially in systems research. The size and continual
evolution of the Linux code-base makes it difficult to understand, and
as a result, decipher and explain the reasons for performance
improvements. In addition, the rapid kernel development cycle means
that experimental results can be viewed as out of date, or meaningless,
very quickly. We demonstrate that this viewpoint is incorrect because
kernel changes can and have introduced both bugs and performance
degradations.
</p>
<p>
This talk describes some of our experiences using the Linux kernel as a
platform for conducting performance evaluations and some performance
regressions we have found. Our results show, these performance
regressions can be serious (e.g., repeating identical experiments
results in large variability in results) and long lived despite having
a large negative impact on performance (one problem appears to have
existed for more than 3 years). Based on these experiences, we argue
that it is often reasonable to use an older kernel version,
experimental results need careful analysis to explain why a change in
performance occurs, and publishing papers that validate prior research
is essential.
</p>
<p>
This is joint work with Ashif Harji and Peter Buhr.
</p>
<p>
This talk will be about 20-25 minutes long with lots of time for
questions and discussion afterwards.
</p>
</abstract>
</eventitem>
<eventitem date="2011-06-24" time="7 PM" room="Comfy Lounge" title="Code Party 2">
<short>
<p>
The second Code Party of the term takes place this Friday! Come hack on some code,
solve some puzzles, and have some fun. The event starts in the evening and will run
all night. You can show up for any portion of it. You should bring a laptop, and
probably have something in mind to work on, though you're welcome with neither.
</p>
<p>
Snacks will be provided.
</p>
</short>
</eventitem>
<eventitem date="2011-06-14" time="4:30 PM" room="MC 2054" title="Taming Software Bloat with AdaptableGIMP">
<short>
Ever use software with 100s or 1000s of commands? Ever have a hard time
finding the right commands to perform your task? In this talk, we'll
present AdaptableGIMP, a new version of GIMP developed at Waterloo to
help simplify complex user interfaces.
</short>
<abstract>
12 years ago
<p>
Ever use software with 100s or 1000s of commands? Ever have a hard time
finding the right commands to perform your task? We have. And we have
some new ideas on how to deal with software bloat.
</p>
<p>
In this talk, we'll present AdaptableGIMP, a new version of GIMP
developed by the HCI Lab here at the University of Watreloo.
AdaptableGIMP introduces the notion of crowdsourced interface
customizations: Any user of the application can customize the interface
for performing a particular task, with that customization instantly
shared with all other users through a wiki at adaptablegimp.org. In the
talk, we'll demo this new version of GIMP and show how it can help
people work faster by simplifying feature-rich, complex user
interfaces.
</p>
</abstract>
</eventitem>
<eventitem date="2011-06-09" time="4:30 PM" room="MC 2054"
title="General Purpose Computing on Graphics Cards">
<short>
In the first of our member talks for the term, Katie Hyatt will give a
short introduction to General Purpose Graphics Processing Unit
computing. This expanding field has many applications. The primary
focus of this talk will be nVidia's CUDA architecture.
</short>
<abstract>
<p> This is the first of our member talks for the term, presented by
CSC member and Waterloo undergraduate student Katie Hyatt
</p>
<p>
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.
</p>
<p>
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!
</p>
</abstract>
</eventitem>
<eventitem date="2011-06-03" time="7 PM" room="Comfy Lounge" title="Code Party 1">
12 years ago
<short>
The Computer Science Club is having our first code party of the term.
The theme for this week's code party is personal projects. Come show us
what you've been working on! Of course, everybody is welcome, even if you
don't have a project.
</short>
<abstract>
The Computer Science Club is having our first code party of the term.
The theme for this week's code party is personal projects. Come show us
what you've been working on! Of course, everybody is welcome, even if you
don't have a project.
Personal projects are a great way to flex your CS muscles, and learn interesting
and new things. Come out and have some fun!
Two more are scheduled for later in the term.
</abstract>
</eventitem>
<eventitem date="2011-05-09" time="5:31 PM" room="Comfy Lounge" title="Elections Nominees List">
<short>
<p>CSC Elections, final list of nominations for Spring 2011</p>
</short>
<abstract>
<p>The nominations are:
<ul>
<li>President: jdonland, mimcpher, mthiffau</li>
<li>Vice-President: jdonland, mimcpher</li>
<li>Treasurer: akansong, kspaans</li>
<li>Secretary: akansong, jdonland</li>
</ul>
</p>
</abstract>
</eventitem>
<eventitem date="2011-05-09" time="5:30 PM" room="Comfy Lounge" title="Elections">
<short>
<p>CSC Elections have begun for the Spring 2011 term, nominations are open!</p>
</short>
<abstract>
<p>It's time to elect your CSC executive for the Spring 2011 term. The
elections will be held on Monday May 9th at 5:30PM in the Comfy Lounge
on the 3rd floor of the MC. Nominations can be sent to the Chief
Returning Officer, <a href="mailto:cro@csclub.uwaterloo.ca">cro@csclub.uwaterloo.ca</a>.
Nominations will be open until 4:30PM on Monday May 9th. You can also stop by the office in
person to write your nominations on the white board.</p>
<p>The executive positions open for nomination are:
<ul>
<li>President</li>
<li>Vice-President</li>
<li>Treasurer</li>
<li>Secretary</li>
</ul>
There are also numerous positions that will be appointed once the
executive are elected including systems administrator, office manager,
and librarian.</p>
<p>Everyone is encouraged to run if they are interested, regardless of
program of study, age, or experience. If you can't make the election,
that's OK too! You can give the CRO a statement to read on your
behalf. If you can't make it or are out of town, your votes can be
sent to the CRO in advance of the elections. For the list of nominees,
watch the CSC website, or ask the CRO.</p>
<p>Good luck to our candidates!</p>
</abstract>
</eventitem>
<!-- Winter 2011 -->
<eventitem date="2011-03-17" time="04:30 PM" room="MC2034" title="Software Patents">
<short><p><i>by Stanley Khaing</i>. What are the requirements for obtaining a patent? Should software be patentable?</p></short>
<abstract>
<p>Stanley Khaing is a lawyer from Waterloo whose areas of practice are software and high technology. He will be discussing software patents. In particular, he will be addressing the following questions:</p>
<ul>
<li>What are the requirements for obtaining a patent?</li>
<li>Should software be patentable?</li>
</ul>
</abstract>
</eventitem>
<eventitem date="2011-02-17" time="07:00 PM" room="MC2017" title="A Smorgasbord of Perl Talks">
<short><p><i>by KW Perl Mongers</i>. These talks are intended for programmers who are curious about the Swiss Army Chainsaw of languages, Perl.</p></short>
<abstract>
<p>Tyler Slijboom will present:</p>
<ul>
<li>Prototyping in Perl,</li>
<li>Perl Default Variables,</li>
<li>HOWTO on OO Programming, and</li>
<li>HOWTO on Installing and Using Modules from CPAN</li>
</ul>
<p>Daniel Allen will present:</p>
<ul>
<li>Coping with Other Peoples' Code</li>
</ul>
<p>Justin Wheeler will present:</p>
<ul>
<li>Moose: a Modern Perl Framework</li>
</ul>
</abstract>
</eventitem>
<eventitem date="2011-02-09" time="04:30 PM" room="MC3003" title="UNIX 103: Version Control Systems">
<short><p><i>by Calum T. Dalek</i>. In this long-awaited third installment of the popular Unix Tutorials the friendly experts of the CSC will teach you the simple art of version control.
</p></short>
<abstract><p>You will learn the purpose and use of two different Version Control Systems (git and subversion). This tutorial will advise you in the discipline of managing the source code of your projects and enable you to quickly learn new Version Control Systems in the work place -- a skill that is much sought after by employers.</p></abstract>
</eventitem>
<eventitem date="2011-02-04" time="07:00 PM" room="Comfy Lounge" title="Code Party">
<short><p><i>by Calum T. Dalek</i>. Come one, come all to the Code Party happening in the Comfy Lounge this Friday. The event starts at 7:00PM and will run through the night.</p></short>
<abstract><p>Why sleep when you could be hacking on $your_favourite_project or doing $something_classy in great company? Join us for a night of coding and comraderie! Food and caffeine will be provided.</p></abstract>
</eventitem>
<eventitem date="2011-02-02" time="04:30 PM" room="MC3003" title="UNIX 102: Documents and Editing in the Unix environment">
<short><p><i>by Calum T. Dalek</i>. The next installment in the CS Club's popular Unix tutorials UNIX 102 introduces powerful text editing tools for programming and document formatting.
</p></short>
<abstract><p>Unix 102 is a follow up to Unix 101, requiring basic knowledge of the shell. If you missed Unix 101 but still know your way around you should be fine. Topics covered include: "real" editors, document typesetting with LaTeX (great for assignments!), bulk editing, spellchecking, and printing in the student environment and elsewhere. If you aren't interested or feel comfortable with these tasks, watch out for Unix 103 and 104 to get more depth in power programming tools on Unix.</p></abstract>
</eventitem>
<eventitem date="2011-01-26" time="04:30 PM" room="MC3003" title="UNIX 101: An Introduction to the Shell">
<short><p><i>by Calum T. Dalek</i>. New to Unix? No problem, we'll teach you to power use circles around your friends!
</p></short>
<abstract><p>This first tutorial is an introduction to the Unix shell environment, both on the student
servers and on other Unix environments. Topics covered include: using the shell, both basic
interaction and advanced topics like scripting and job control, the filesystem and manipulating
it, and ssh. If you feel you're already familiar with these topics don't hesitate to come
to Unix 102 to learn about documents, editing, and other related tasks, or watch out
for Unix 103 and 104 that get much more in depth into power programming tools on Unix.
</p></abstract>
</eventitem>
<!-- Fall 2010 -->
13 years ago
<eventitem date="2010-11-17" time="04:30 PM" room="MC4061" title="Mathematics and aesthetics in maze design">
<short><p><i>by Dr. Craig S. Kaplan</i>. In this talk, I discuss the role of the computer in the process of designing mazes. I present some well known algorithms for maze construction, and more recent research that attempts to novel mazes with non-trivial mathematical or aesthetic properties.
</p></short>
<abstract><p>For thousands of years, mazes and labyrinths have played
an important role in human culture and myth. Today, solving
mazes is a popular pastime, whether with pencil on paper
or by navigating through a cornfield.
</p><p>The construction of compelling mazes encompasses a variety of
challenges in mathematics, algorithm design, and aesthetics.
The maze should be visually attractive, but it should also be
an engaging puzzle. Master designers balance these two goals
with wonderful results.
</p><p>In this talk, I discuss the role of the computer in the process
of designing mazes. I present some well known algorithms for
maze construction, and more recent research that attempts to
novel mazes with non-trivial mathematical or aesthetic properties.
</p></abstract>
</eventitem>
<eventitem date="2010-11-13" time="12:00 PM" room="Outside DC" title="CSC Invades Toronto">
<short><p>The CSC is going to Toronto to visit UofT's <a href="http://cssu.cdf.toronto.edu/">CSSU</a>, see what they do, and have beer with them.
If you would like to come along, please come by the office and sign up. The cost for the trip is $2 per member.
The bus will be leaving from the Davis Center (DC) Saturday Nov. 13 at NOON (some people may have been told 1pm, this is an error). Please show up a few minutes early so we may
board.</p></short>
</eventitem>
13 years ago
<eventitem date="2010-11-05" time="07:00 PM" room="CnD Lounge (MC3002)" title="Hackathon">
<short><p>Come join the CSC for a night of code, music with only 8 bits, and comradarie. We will be in the C&amp;D Lounge from 7pm until 7am working on personal projects, open source projects, and whatever else comes to mind. If you're interested in getting involved in free/open source development, some members will be on hand to guide you through the process.
</p></short>
<abstract><p>Come join the CSC for a night of code, music with only 8 bits, and comradarie. We will be
in the C&amp;D Lounge from 7pm until 7am working on personal projects, open source projects, and
whatever else comes to mind. If you're interested in getting involved in free/open source development,
some members will be on hand to guide you through the process.
</p></abstract>
</eventitem>
13 years ago
<eventitem date="2010-10-26" time="04:30 PM" room="MC4040" title="Analysis of randomized algorithms via the probabilistic method">
<short><p>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.
</p></short>
<abstract><p>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.
</p><p>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
physics.
</p><p>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.
</p><p>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.
</p></abstract>
</eventitem>
13 years ago
<eventitem date="2010-10-19" time="04:30 PM" room="RCH 306" title="Machine learning vs human learning - will scientists become obsolete?">
<short><p><i>by Dr. Shai Ben-David</i>.
</p></short>
<abstract><p>
</p></abstract>
</eventitem>
13 years ago
<eventitem date="2010-10-13" time="04:30 PM" room="MC3003" title="UNIX 102">
<short><p>This installment in the CS Club's popular Unix tutorials UNIX 102 introduces powerful text editing tools for programming and document formatting.
</p></short>
<abstract><p>Unix 102 is a follow up to Unix 101, requiring basic knowledge of the shell.
If you missed Unix101 but still know your way around you should be fine.
Topics covered include: "real" editors, document typesetting with LaTeX
(great for assignments!), bulk editing, spellchecking, and printing in the
student environment and elsewhere.
</p></abstract>
</eventitem>
13 years ago
<eventitem date="2010-10-06" time="04:30 PM" room="MC3003" title="UNIX 103">
<short><p>Unix 103 will cover version control systems and how to use them to manage your projects. Unix 101 would be helpful, but all that is needed is basic knowledge of the Unix command line (how to enter commands).
</p></short>
<abstract><p>Unix 103 will cover version control systems and how to use them to manage
your projects. Unix 101 would be helpful, but all that is needed is basic
knowledge of the Unix command line (how to enter commands).
</p></abstract>
</eventitem>
<eventitem date="2010-10-12" time="04:30 PM" room="MC4061" title="How to build a brain: From single neurons to cognition">
13 years ago
<short><p><i>By Dr. Chris Eliasmith</i>. 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.
</p></short>
13 years ago
<abstract><p><i>By Dr. Chris Eliasmith</i>. 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.
</p></abstract>
</eventitem>
<eventitem date="2010-10-04" time="04:30 PM" room="MC4021" title="BareMetal OS">
13 years ago
<short><p><i>By Ian Seyler, Return to Infinity</i>. 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.
</p></short>
13 years ago
<abstract><p><i>By Ian Seyler, Return to Infinity</i>. 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.
</p></abstract>
</eventitem>
13 years ago
<eventitem date="2010-09-28" time="04:30 PM" room="MC4061" title="A Brief Introduction to Video Encoding">
<short><p><i>By Peter Barfuss</i>. 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.
</p></short>
<abstract><p><i>By Peter Barfuss</i>. 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.
</p><p>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.
</p></abstract>
</eventitem>
13 years ago
<eventitem date="2010-09-23" time="04:30 PM" room="DC1301 (The Fishbowl)" title="Calling all CS Frosh">
<short><p>Come meet and greet your professors, advisors, and the heads of the school. Talk to the CSC executive and other upper year students about CS at Waterloo. Free food and beverages will also be available, so there is really no excuse to miss this.
</p></short>
<abstract><p>Come meet and greet your professors, advisors, and the heads of the school.
Talk to the CSC executive and other upper year students about CS at Waterloo.
Free food and beverages will also be available, so there is really no excuse
to miss this.
</p></abstract>
</eventitem>
13 years ago
<eventitem date="2010-09-29" time="04:30 PM" room="MC3003" title="Unix 101">
13 years ago
<short><p>Need to use the Unix environment for a course, want to overcome your fears of the command line, or just curious? Attend the first installment in the CSC's popular series of Unix tutorials to learn the basics of the shell and how to navigate the unix environment. By the end of the hands on workshop you will be able to work efficiently from the command line and power-use circles around your friends.
13 years ago
</p></short>
<abstract><p>Need to use the Unix environment for a course, want to overcome your fears of
the command line, or just curious? Attend the first installment in the CSC's
popular series of Unix tutorails to learn the basics of the shell and how to
navigate the unix environment. By the end of the hands on workshop you will
be able to work efficiently from the command line and power-use circles around
your friends.
</p></abstract>
</eventitem>
<eventitem date="2010-09-22" time="06:00 PM" room="MC4045" title="Cooking for Geeks">
<short><p>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.
</p></short>
<abstract><p>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.
</p><p>But you don't have to take our word for it... here's what Jeff has to say:
</p><p>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.
</p><p>If you have a copy of the book, bring it! I’ll happily sign it.
</p></abstract>
</eventitem>
13 years ago
<eventitem date="2010-09-21" time="04:30 PM" room="MC4061" title="In the Beginning">
<short><p><b>by Dr. Prabhakar Ragde, Cheriton School of Computer Science</b>. I'll be workshopping some lecture ideas involving representations of
13 years ago
numbers, specification of computation in functional terms, reasoning about
such specifications, and comparing the strengths and weaknesses of different approaches.
</p></short>
<abstract><p>I'll be workshopping some lecture ideas involving representations
of numbers, specification of computation in
functional terms, reasoning about such specifications, and comparing the
strengths and weaknesses of
different approaches. No prior background is needed; the talk should be accessible
to anyone attending
the University of Waterloo and, I hope, interesting to both novices and experts.
</p></abstract>
</eventitem>
<eventitem date="2010-09-14" time="04:30 PM" room="Comfy Lounge" title="Elections">
<short><p>Fall term executive elections and general meeting.</p></short>
</eventitem>
<!-- Spring 2010 -->
13 years ago
<eventitem date="2010-07-20" time="04:30 PM" room="MC2066" title="The Incompressibility Method">
<short>
In this talk, we shall explore the incompressibility method---an interesting and
extremely powerful framework for determining the average-case runtime of
algorithms. Within the right background knowledge, the heapsort question can be
answered with an elegant 3-line proof.
</short>
<abstract>
<p>Heapsort. It runs in $\Theta(n \log n)$ time in the worst case, and in $O(n)$
time in the best case. Do you think that heapsort runs faster than $O(n
\log n)$ time on average? Could it be possible that on most inputs,
heapsort runs in $O(n)$ time, running more slowly only on a small fraction
of inputs?</p>
<p>Most students would say no. It "feels" intuitively obvious that heapsort
should take the full $n \log n$ steps on most inputs. However, proving this
rigourously with probabilistic arguments turns out to be very difficult.
Average case analysis of algorithms is one of those icky subjects that most
students don't want to touch with a ten foot pole; why should it be so
difficult if it is so intuitively obvious?</p>
<p>In this talk, we shall explore the incompressibility method---an interesting
and extremely powerful framework for determining the average-case runtime of
algorithms. Within the right background knowledge, the heapsort question
can be answered with an elegant 3-line proof.</p>
<p>The crucial fact is that an overwhelmingly large fraction of randomly
generated objects are incompressible. We can show that the inputs to
heapsort that run quickly correspond to inputs that can be compressed,
thereby proving that heapsort can't run quickly on average. Of course,
"compressible" is something that must be rigourously defined, and for this
we turn to the fascinating theory of Kolmogorov complexity.</p>
<p>In this talk, we'll briefly discuss the proof of the incompressibility
theorem and then see a number of applications. We won't dwell too much on
gruesome mathemtical details. No specific background is required, but
knowledge of some of the topics in CS240 will be helpful in understanding
some of the applications.</p>
</abstract>
</eventitem>
13 years ago
<eventitem date="2010-07-13" time="04:30 PM" room="MC2066" title="Halftoning and Digital Art">
<short><p>Edgar Bering will be giving a talk titled: Halftoning and Digital Art</p></short>
<abstract><p>Halftoning is the process of simulating a continuous tone image
with small dots or regions of one colour. Halftoned images may be seen
13 years ago
in older newspapers with a speckled appearance, and to this day colour
halftoning is used in printers to reproduce images. In this talk I will
present various algorithmic approaches to halftoning, with an eye not
toward exact image reproduction but non-photorealistic rendering and
art. Included in the talk will be an introduction to digital paper
cutting and a tutorial on how to use the CSC's paper cutter to render
creations.
13 years ago
</p></abstract>
</eventitem>
13 years ago
<eventitem date="2010-07-09" time="07:00 PM" room="MC Comfy" title="Code Party">
<short><p>There is a CSC Code Party Friday starting at 7:00PM (1900)
until we get bored (likely in the early in morning). Come out for
fun hacking times.
</p></short>
<abstract><p>There is a CSC Code Party Friday starting at 7:00PM (1900)
until we get bored (likely in the early in morning). Come out for
fun hacking times.
</p></abstract>
</eventitem>
<eventitem date="2010-07-06" time="04:30 PM" room="MC2054" title="Dataflow Analysis">
<short><p>Nomair Naeem, a P.H.D. Student at Waterloo, will be giving a talk about Dataflow Analysis</p></short>
<abstract><p>
After going through an introduction to Lattice Theory and a formal treatment to
Dataflow Analysis Frameworks, we will take an in-depth view of the
Interprocedural Finite Distributive Subset (IFDS) Algorithm which implements a
fully context-sensitive, inter-procedural static dataflow analysis. Then, using
a Variable Type Analysis as an example, I will outline recent extensions that we
have made to open up the analysis to a larger variety of static analysis
problems and making it more efficient.
</p><p>
The talk is self-contained and no prior knowledge of program analysis is
necessary.
</p></abstract>
</eventitem>
<eventitem date="2010-06-22" time="04:30 PM" room="MC2066" title="Compiling To Combinators">
13 years ago
<short><p>Professor Ragde will be giving the first of our Professor talks for the Spring 2010 term.</p></short>
<abstract><p>
Number theory was thought to be mathematically appealing but practically
useless until the RSA encryption algorithm demonstrated its considerable
utility. I'll outline how combinatory logic (dating back to 1920) has a
similarly unexpected application to efficient and effective compilation,
which directly catalyzed the development of lazy functional programming
languages such as Haskell. The talk is self-contained; no prior knowledge
of functional programming is necessary.
</p></abstract>
13 years ago
</eventitem>
13 years ago
<eventitem date="2010-05-25" time="05:00 PM" room="MC2066" title="Gerald Sussman">
<short><p>Why Programming is a Good Medium for Expressing Poorly Understood and Sloppily Formulated Ideas</p></short>
<abstract>Full details found <a href="http://csclub.uwaterloo.ca/misc/sussman/">here</a></abstract>
</eventitem>
13 years ago
<eventitem date="2010-05-26" time="03:30 PM" room="MC5136" title="Gerald Sussman">
<short><p>Public Reception</p></short>
<abstract>Full details found <a href="http://csclub.uwaterloo.ca/misc/sussman/">here</a></abstract>
</eventitem>
13 years ago
<eventitem date="2010-05-26" time="05:000PM" room="MC5158" title="Gerald Sussman">
<short><p>The Art of the Propagator</p></short>
<abstract>Full details found <a href="http://csclub.uwaterloo.ca/misc/sussman/">here</a></abstract>
</eventitem>
13 years ago
<eventitem date="2010-05-11" time="05:30 PM" room="Comfy Lounge" title="Elections">
<short><p>Spring term executive elections and general meeting.</p></short>
</eventitem>
<!-- Winter 2010 -->
13 years ago
<eventitem date="2010-04-06" time="04:30 PM" room="DC1304" title="Brush-Based Constructive Solid Geometry">
<short><p>The last talk in the CS10 series will be presented by Jordan Saunders, in which he will discuss methods for processing brush-based constructive solid geometry.
</p></short>
<abstract><p>For some would-be graphics programmers, the biggest barrier-to-entry is getting data to render. This is why there exist so
many terrain renderers: by virtue of the fact that rendering height-fields tends to give pretty pictures from next to no
"created" information. However, it becomes more difficult when programmers want to do indoor rendering (in the style of the
Quake and Unreal games). Ripping map information from the Quake games is possible (and fairly simple), but their tool-chain
is fairly clumsy from the point of view of adding a conversion utility.