Adding CSC Goes Outside Again event
[www/www.git] / events.xml
1 <?xml version='1.0'?>
2
3 <!DOCTYPE eventdefs SYSTEM "csc.dtd" [<!ENTITY mdash "&#x2014;">]>
4 <eventdefs>
5
6 <!-- Spring 2014 -->
7
8 <eventitem date="2014-07-25" time="7:30 PM" room="Laurel Creek Fire Pit"
9            title="CSC Goes Outside Again!">
10   <short>
11     <p>
12       Do you like going outside? Are you vitamin-D deficient from being in the
13       MC too long? Do you think s'mores and bonfire are a delicious
14       combination? If so, you should join us as the CSC is going outside again!
15       Around 7:30PM, we're going to Laurel Creek Fire Pit for some outdoor fun.
16       Come throw frisbees, relax and eat snacks in good company - even if you
17       aren't a fan of the outside or vitamin-D deficient! We'll also have
18       some sort of real food - probably pizza.
19     </p>
20   </short>
21 </eventitem>
22
23
24 <eventitem date="2014-07-22" time="6:00 PM" room="MC 4020"
25            title="The Most Important Parts of School (from a CS dropout)">
26   <short>
27     <p>
28       Learn about the real reasons you should be in school from David Wolever,
29       CTO of akindi and a director of PyCon Canada.
30     </p>
31   </short>
32   <abstract>
33     <p>
34       Hindsight is 20/20, and since leaving university I’ve had five years and three
35       startups to reflect on the most valuable things I have (and haven’t) taken away
36       from my time in school.
37       David studied computer science for three years at the University of Toronto
38       before leaving to be employee zero at a Waterloo-based startup. Since then
39       he has been a founder of two more startups, started PyCon Canada, and has
40       written hundreds of thousands of lines of code. He is currently CTO of Akindi, a
41       Toronto-based startup trying to make multiple choice testing a bit less terrible.
42       He’s best found on Twitter at http://twitter.com/wolever
43     </p>
44   </abstract>
45 </eventitem>
46
47 <eventitem date="2014-07-11" time="5:00 PM" room="MC 3003, M3 1006"
48            title="Unix 102, Code Party 1">
49   <short>
50     <p>
51       Learn how to host a website and spend the night hacking!
52     </p>
53   </short>
54   <abstract>
55     <p>
56       Did you know that by becoming a CSC member, you get 4GB of free webspace?
57       Join us in MC 3003 on Friday July 11 to learn how to use that space and
58       host content for the world to see!
59
60       Afterwards we will be moving over to M3 1006 for a night of hacking and
61       snacking! Work on a personal project, open source software, or anything
62       you wish. Food will be provided for your hacking pleasure.
63
64       Come join us for an evening of fun, learning, and food!
65     </p>
66   </abstract>
67 </eventitem>
68
69 <eventitem date="2014-06-25" time="6:00 PM" room="MC 2035" title="Battle Decks">
70   <short>
71     <p>
72       Five slides. Five minutes. Pure fun.
73     </p>
74   </short>
75   <abstract>
76     <p>
77       Create an entertaining slideshow and present someone else's on the spot!
78       Join us in MC 2035 on Wednesday June 25 at 18:00 for a fun evening of
79       quick presentations of random slide decks. An example from last semester
80       can be found at tinyurl.com/battle-decks-example. Please e-mail your
81       battle deck to l3france@csclub.uwaterloo.ca. Snacks will be provided to
82       fuel your battle hunger!
83     </p>
84   </abstract>
85 </eventitem>
86
87 <eventitem date="2014-06-19" time="5:30 PM" room="MC 4064"
88            title="Bloomberg Technical Talk">
89   <short>
90     <p>
91       Learn how functional programming is used in the real world, while
92       enjoying free dinner, and free swag.
93     </p>
94   </short>
95   <abstract>
96     <p>
97       Enjoy a free dinner while Max Ransan, a lead developer at Bloomberg,
98       talks about the use of functional programming within a recently developed
99       product from Bloomberg. This includes UI generation, domain-specific
100       languages, and more! Free swag will also be provided.
101     </p>
102   </abstract>
103 </eventitem>
104
105 <eventitem date="2014-06-13" time="7:30 PM" room="Laurel Creek Fire Pit"
106            title="CSC Goes Outside">
107   <short>
108     <p>
109       Come throw a frisbee, hang around a bonfire, and roast marshmellows!
110       This is a social event just for fun, so come relax and eat snacks in
111       good company!
112     </p>
113   </short>
114   <abstract>
115     <p>
116       Meet at the Laurel Creek Fire Pit (the one across Ring Road from EV3)
117       at 7:30 for a fun night of hanging out with friends. If you aren't sure
118       where it is, meet at the office ten minutes before hand, and we will
119       walk over together. We'll start the evening off with throwing around
120       a frisbee or two, and as the night goes on we'll light up the fire and
121       get some s'mores cooking!
122     </p>
123   </abstract>
124 </eventitem>
125
126 <eventitem date="2014-05-30" time="5:30 PM" room="MC 3003, Comfy Lounge"
127            title="Unix 101/Code Party 0">
128   <short>
129     <p>
130       Interested in Unix, but don't know where to start? Then Come learn some
131       basic topics with us including interaction with the shell, motivation
132       for using it, some simple commands, and more.
133     </p>
134     <p>
135       Afterwards we will be moving over to the MC Comfy Lounge for a
136       fun night of hacking! The sysadmin position will also be ratified
137       during a general meeting of the membership at this time. Come join us
138       for an evening of fun, learning, and food!
139     </p>
140   </short>
141   <abstract>
142     <p>
143       Interested in Unix, but don't know where to start? Then start
144       in MC 3003 on Friday May 30 with basic topics including
145       interaction with the shell, motivation for using it, some simple
146       commands, and more.
147     </p>
148     <p>
149       Afterwards we will be moving over to the MC Comfy Lounge for a
150       fun night of hacking! Work on a personal project, open source
151       software, or anything you wish. Food will be available for your
152       hacking pleasure. The Sysadmin position will also be ratified
153       during a general meeting at this time. Come join us for an
154       evening of fun, learning, and food!
155     </p>
156   </abstract>
157 </eventitem>
158
159 <eventitem date="2014-05-15" time="6:00 PM" room="Comfy Lounge"
160            title="Spring 2014 Elections">
161   <short>
162     <p>The Computer Science Club will soon be holding elections for this term's
163     executive. The president, vice president, treasurer, and secretary for the
164     spring 2014 term will be elected. The system administrator, office manager,
165     and librarian are also typically appointed here.
166     </p>
167   </short>
168   <abstract>
169     <p>Nominations are now closed. The candidates are:</p>
170     <ul>
171       <li>President:<ul>
172         <li>Jinny Kim (<tt>yj7kim</tt>)</li>
173         <li>Matthew Thiffault (<tt>mthiffau</tt>)</li>
174         <li>Shane Creighton-Young (<tt>srcreigh</tt>)</li>
175         <li>Hayford Peprah (<tt>hkpeprah</tt>)</li>
176       </ul></li>
177       <li>Vice-President:<ul>
178         <li>Luke Franceschini (<tt>l3france</tt>)</li>
179         <li>Jinny Kim (<tt>yj7kim</tt>)</li>
180         <li>Shane Creighton-Young (<tt>srcreigh</tt>)</li>
181         <li>Hayford Peprah (<tt>hkpeprah</tt>)</li>
182       </ul></li>
183       <li>Treasurer:<ul>
184         <li>Luke Franceschini (<tt>l3france</tt>)</li>
185         <li>Matthew Thiffault (<tt>mthiffau</tt>)</li>
186         <li>Catherine Mercer (<tt>ccmercer</tt>)</li>
187         <li>Joseph Chouinard (<tt>jchouina</tt>)</li>
188       </ul></li>
189       <li>Secretary:<ul>
190         <li>Luke Franceschini (<tt>l3france</tt>)</li>
191         <li>Catherine Mercer (<tt>ccmercer</tt>)</li>
192         <li>Joseph Chouinard (<tt>jchouina</tt>)</li>
193         <li>Ifaz Kabir (<tt>ikabir</tt>)</li>
194       </ul></li>
195     </ul>
196   </abstract>
197 </eventitem>
198
199
200
201 <!-- Winter 2014 -->
202
203
204 <eventitem date="2014-03-28" time="7:00 PM" room="CPH 1346" title="HackWaterloo">
205     <short>
206         <p>Work on a software project for 24 hours in teams of up to 4 members. Swag will be provided
207     by Facebook and Google. A Microsoft Surface Tablet will be awarded to the winning team.
208     Register and find out more at <a href="http://hack-waterloo.com">http://hack-waterloo.com</a>.</p>
209     </short>
210     <abstract>
211         <p>Work on a software project for 24 hours in teams of up to 4 members. Swag will be provided
212     by Facebook and Google. A Microsoft Surface Tablet will be awarded to the winning team.
213     Register and find out more at <a href="http://hack-waterloo.com">http://hack-waterloo.com</a>.</p>
214     </abstract>
215 </eventitem>
216
217 <eventitem date="2014-03-18" time="7:00 PM" room="MC 4041" title="Battle Decks">
218     <short>
219         <p>Create a 5-slide PowerPoint presentation about a specific topic. Bring it with
220             you to the event (on a flash drive). Submit it into the lottery. Select a random
221             PowerPoint presentation from the lottery and talk about it on the spot.
222         </p>
223     </short>
224     <abstract>
225         <p>Create a 5-slide PowerPoint presentation about a specific topic. Bring it with
226             you to the event (on a flash drive). Submit it into the lottery. Select a random
227             PowerPoint presentation from the lottery and talk about it on the spot.
228         </p>
229     </abstract>
230 </eventitem>
231
232 <eventitem date="2014-03-14" time="7:00 PM" room="Comfy Lounge" title="Code Party 1">
233     <short>
234         <p>We will be having our 2nd code party this term. Enjoy a free dinner, relax, and
235            share ideas with your friends about your favourite topics in computer science.
236         </p>
237     </short>
238     <abstract>
239         <p>We will be having our 2nd code party this term. Enjoy a free dinner, relax, and
240            share ideas with your friends about your favourite topics in computer science.
241         </p>
242     </abstract>
243 </eventitem>
244
245 <eventitem date="2014-02-13" time="5:30 PM" room="MC 3003" title="UNIX 101">
246     <short><p>Learn the basics of using tools found commonly on UNIX-like operating systems.
247     For students new to this topic, knowledge gained from UNIX 101 would be useful in coursework.</p>
248     </short>
249     <abstract><p>Learn the basics of using tools found commonly on UNIX-like operating systems.
250     For students new to this topic, knowledge gained from UNIX 101 would be useful in coursework.</p>
251     </abstract>
252 </eventitem>
253
254 <eventitem date="2014-02-13" time="6:30 PM" room="Comfy Lounge" title="Code Party 0">
255     <short><p>Immediately after UNIX 101, we will be having our first annual code party.
256             Enjoy a free dinner, relax, and share ideas with your friends about
257             your favourite topics in computer science.</p>
258     </short>
259     <abstract><p>Immediately after UNIX 101, we will be having our first annual code party.
260             Enjoy a free dinner, relax, and share ideas with your friends about
261            your favourite topics in computer science.</p>
262     </abstract>
263 </eventitem>
264
265
266 <eventitem date="2014-02-04" time="5:30 PM" room="MC 4058" title="Bloomberg Talk">
267   <short><p>
268           Bloomberg's Alex Scotti will be presenting a talk this Tuesday on concurrency control
269           implementations in relational databases. Free swag and dinner will be provided.
270   </p></short>
271   <abstract>
272       <p>Join Alex Scotti of Bloomberg LP for a discussion of concurrency control
273           implementation in relational database systems. Focus will be placed on the
274           optimistic techniques as employed and developed inside Combdb2, Bloomberg's
275           database system.</p>
276       <p>Food will be served by Kismet!</p>
277   </abstract>
278 </eventitem>
279
280
281 <eventitem date="2014-01-16" time="5:30 PM" room="Comfy Lounge" title="Winter 2014 Elections">
282   <short><p>
283      Elections for Winter 2014 are being held! The Executive will be elected,
284      and the Office Manager and Librarian will be appointed by the new
285      executive.
286   </p></short>
287   <abstract>
288     <p>It's elections time again! On Thursday, January 16 at 5:30PM, come to the Comfy Lounge
289     on the 3rd floor of the MC to vote in this term's President, Vice-President, Treasurer
290     and Secretary. The Sysadmin, Librarian, and Office Manager will also be chosen at this time.</p>
291
292     <p>Nominations are open until 4:30PM on Wednesday, January 15, and can be written
293     on the CSC office whiteboard (yes, you can nominate yourself). Full CSC
294     members can vote and are invited to drop by. You may also send nominations to
295     the <a href="mailto:cro@csclub.uwaterloo.ca">Chief Returning Officer</a> by email.</p>
296
297     <p>Nominations are now closed. The candidates are:</p>
298     <ul>
299       <li>President:<ul>
300         <li>Jonathan Bailey (<tt>jj2baile</tt>)</li>
301         <li>Nicholas Black (<tt>nablack</tt>)</li>
302         <li>Bryan Coutts (<tt>b2coutts</tt>)</li>
303         <li>Annamaria Dosseva (<tt>mdosseva</tt>)</li>
304         <li>Youn Jin Kim (<tt>yj7kim</tt>)</li>
305         <li>Visha Vijayanand (<tt>vvijayan</tt>)</li>
306       </ul></li>
307       <li>Vice-President:<ul>
308         <li>Nicholas Black (<tt>nablack</tt>)</li>
309         <li>Bryan Coutts (<tt>b2coutts</tt>)</li>
310         <li>Visha Vijayanand (<tt>vvijayan</tt>)</li>
311       </ul></li>
312       <li>Treasurer:<ul>
313         <li>Jonathan Bailey (<tt>jj2baile</tt>)</li>
314         <li>Nicholas Black (<tt>nablack</tt>)</li>
315         <li>Marc Burns (<tt>m4burns</tt>)</li>
316         <li>Bryan Coutts (<tt>b2coutts</tt>)</li>
317       </ul></li>
318       <li>Secretary:<ul>
319         <li>Jonathan Bailey (<tt>jj2baile</tt>)</li>
320         <li>Bryan Coutts (<tt>b2coutts</tt>)</li>
321         <li>Mark Farrell (<tt>m4farrel</tt>)</li>
322       </ul></li>
323     </ul>
324   </abstract>
325 </eventitem>
326
327
328 <!-- Fall 2013 -->
329 <eventitem date="2013-11-23" time="TBD" room="Toronto, ON"
330            title="CSC Goes to Toronto Erlang Factory Lite 2013">
331   <short><p>
332     The CSC has been invited to attend this Erlang conference in Toronto. If
333     you are interested in attending, please sign up on our <a
334     href="http://goo.gl/8XOELB">web form</a>. We have submitted a MEF proposal
335     to cover the transportation fees of up to 25 math undergraduates.
336   </p></short>
337   <abstract><p>
338     The CSC has been invited to attend this Erlang conference in Toronto. If you
339     are interested in attending, please sign up on our <a
340     href="http://goo.gl/8XOELB">web form</a>, so we can coordinate the group.
341     We have submitted a MEF proposal to cover the transportation fees of up to
342     25 math undergraduates to attend. You will be responsible for your
343     conference fee and transportation, and if the MEF proposal is granted, you
344     can submit your bus tickets/mileage record and conference badge to MEF for
345     a reimbursement. From the <a
346     href="https://www.erlang-factory.com/conference/Toronto2013">conference
347     website</a>:</p>
348
349     <p>"Our first ever Toronto Erlang Factory Lite has been confirmed. Join us
350     on 23 November for a full day debate on Erlang as a powerful tool for
351     building innovative, scalable and fault tolerant applications. Our speakers
352     will showcase examples from their work experience and their personal success
353     stories, thus presenting how Erlang solves the problems related to
354     scalability and performance. At this event we will focus on what Erlang
355     brings to the table in the multicore era."
356   </p></abstract>
357 </eventitem>
358
359 <eventitem date="2013-11-22" time="6:30PM" room="MC 3001 (Comfy)"
360            title="Hackathon-Code Party!!">
361   <short><p>
362     Join us for a night of code, food, and caffeine! There will be plenty of
363     edibles and hacking for your enjoyment. If you are interested in getting
364     involved in Open Source, there will be mentors on hand to get you started.
365     Hope to see you there&mdash;bring your friends!
366   </p></short>
367  <abstract><p>
368     Join us for a night of code, food, and caffeine! There will be plenty of
369     edibles and hacking for your enjoyment, including a full catered dinner
370     courtesy of the Mathematics Society.</p>
371
372     <p>There will be two Open Source projects featured at tonight's code
373     party, with mentors on hand for each. Here is a quick summary of each of
374     the projects available:</p>
375
376     <p><b><a href="http://openhatch.org">OpenHatch</a>:</b> Not sure where to
377     start? Not to fear! OpenHatch is a project that seeks to introduce people
378     to Open Source for the first time and help you get involved. There will be
379     a presentation with an introduction to the tools and information you will
380     need, and mentors present to help you get set up to fix your first
381     bug.</p>
382
383     <p><b><a
384 href="http://uwaterloo.ca/games-institute/events/social-innovation-simulation-design-jam-day-1">Social
385     Innovation Simulation Design Jam</a>:</b> The UWaterloo Games Institute and
386     SiG@Waterloo will be partnering with us tonight to kick off their weekend
387     hackathon Design Jam. They seek coders, artists, writers, database and
388     graphics people to help them out with their project.
389   </p></abstract>
390 </eventitem>
391
392 <eventitem date="2013-11-26" time="5:00PM" room="MC 2038" title="Disk Encryption">
393   <short><p>
394     The last lecture of our security and privacy series. By MMath alumnus
395     Zak Blacher.
396   </p></short>
397   <abstract><p>
398     In Zak's talk, "Disk Encryption: Digital Forensic Analysis &amp; Full
399     Volume Encryption", he aims to cover filesystem forensic analysis
400     and counter forensics by addressing the entire design stack; starting with
401     filesystem construction, design, and theory, and drilling down to the inner
402     workings of hard drives (modern platter hdds, as well as mlc-ssds). This
403     talk leads in to a discussion on full volume encryption, and how this helps
404     to protect one's data.</p>
405
406     <p>The sixth and final lecture of our security and privacy series.
407   </p></abstract>
408 </eventitem>
409
410 <eventitem date="2013-11-12" time="5:00PM" room="MC 4060" title="Trust in ISPs">
411   <short><p>
412     This is the fifth lecture of six in the Security and Privacy Lecture
413     Series. By founding member of the Canadian Cybersecurity Institute and
414     employee of local ISP Sentex Sean Howard.
415   </p></short>
416   <abstract><p>
417     Bell's recent announcement of their use of Deep Packet Inspection (DPI)
418     brings to light a long-standing issue: your internet service provider (ISP)
419     pwns you. They control your IP allocation, your DNS, your ARP, the AS paths.
420     The question has never been about ability&mdash;it's about trust. Whether
421     Rogers, AT&amp;T, Virgin, Telus, Vodafone or Wind, your onramp to the
422     internet is your first and most potent point of security failure.</p>
423
424     <p>Founding member of the Canadian Cybersecurity Institute and employee of
425     local ISP Sentex Sean Howard will vividly demo the reasons you need to be
426     ble to trust your internet provider. Come for the talk, stay for the
427     pizza!</p>
428
429     <p>This is the fifth lecture of six in the Security and Privacy Lecture
430     Series.
431   </p></abstract>
432 </eventitem>
433
434
435 <eventitem date="2013-11-05" time="6:00PM" room="MC 3001 (Comfy)"
436            title="Hands On Seminar on Public Key Cryptography">
437   <short><p>
438     The fourth event in our security and privacy series. By undergraduate
439     students Murphy Berzish and Nick Guenther.
440   </p></short>
441   <abstract><p>
442 Nick Guenther and Murphy Berzish will be holding a hands-on seminar in the
443 Comfy to introduce you to public-private key crypto and how you can practically
444 use it, so bring your laptops! You will learn about PGP, an encryption protocol
445 that provides confidentiality and authenticity. At the seminar, you will learn
446 how to use PGP to send encrypted email and files, provably identify yourself to
447 others, and verify data. Bring a laptop so we can help help you generate your
448 first keypair and give you the chance to form a Web of Trust with your
449 peers.</p>
450
451 <p>A GSIntroducer from <a href="www.GSWoT.org">www.GSWoT.org</a> will be on
452 hand. If you are interested in obtaining an elevated level of trust, bring
453 government-issued photo-ID.</p>
454
455 <p>There will also be balloons and cake.
456   </p></abstract>
457 </eventitem>
458
459
460 <eventitem date="2013-10-24" time="6:30PM" room="DC 1302"
461            title="Practical Tor Usage">
462   <short><p>
463     The third lecture of our security and privacy series. By undergraduate
464     student Simon Gladstone.
465   </p></short>
466   <abstract><p>
467     An introduction to and overview of how to use the Tor Browser Bundle to
468     browse the "Deep Web" and increase security while browsing the Internet. Tor
469     is not the be all end all of Internet security, but it is definitely a step
470     up from using the more popular browsers such as Chrome, Firefox, or
471     Safari.</p>
472
473     <p>The third lecture of our security and privacy series. By undergraduate
474     student Simon Gladstone.
475   </p></abstract>
476 </eventitem>
477
478
479 <eventitem date="2013-10-15" time="5:00PM" room="MC 4060"
480            title="Tunnels and Censorship">
481   <short><p>
482     The second lecture of our security and privacy series. By undergraduate student
483     Eric Dong.
484   </p></short>
485   <abstract><p>
486     In this talk, I will discuss censorship firewalls used in countries such as
487     China and Iran, and how to counteract them. The focus is on advanced
488     application-layer and Deep Packet Inspection firewalls, and unexpected hurdles
489     in overcoming censorship by these firewalls due to the need for very
490     unconventional adversary models. Approaches of the privacy tool Tor, popular
491     proprietary freeware Ultrasurf and Freegate, payware VPNs, and my own
492     experimental Kirisurf project are examined, where strengths and difficulties
493     with each system are noted.</p>
494
495     <p>The second lecture of our security and privacy series. By undergraduate
496     student Eric Dong.
497   </p></abstract>
498 </eventitem>
499
500
501 <eventitem date="2013-10-08" time="5:00PM" room="MC 4041"
502            title="Why Should You Care About Security and Privacy">
503   <short><p>
504     The first lecture of our security and privacy series. By PhD student Sarah
505     Harvey.
506   </p></short>
507   <abstract><p>
508     Recent media coverage has brought to light the presence of various government
509     agencies' surveillance programs, along with the possible interference of
510     governments in the establishment and development of standards and software.
511     This brings to question of just how much we need to be concerned about the
512     security and privacy of our information.</p>
513
514     <p>In this talk we will discuss what all this means in technological and social
515     contexts, examine the status quo, and consider the long-standing implications.
516     This talk assumes no background knowledge of security or privacy, nor any
517     specific technical background. All students are welcome and encouraged to
518     attend.</p>
519
520     <p>The first lecture of our security and privacy series. By PhD student
521     Sarah Harvey.
522   </p></abstract>
523 </eventitem>
524
525
526 <eventitem date="2013-10-03" time="6:30PM" room="PHY 150"
527            title="C++ GoingNative Lectures">
528   <short><p>
529     We will be showing GoingNative
530     lectures from some of the top individuals working on C++
531     approximately biweekly on Thursdays at 6:30PM in the PHY 150 theatre. Every
532     lecture will be accompanied with free pizza and drinks! Dates are Oct. 3, 17,
533     31 and Nov. 7 and 21. Please view this event in detail for more information.
534   </p></short>
535   <abstract><p>
536     If you're not familiar with the C++ GoingNative series, you can check them
537     out on the <a
538     href="http://channel9.msdn.com/Events/GoingNative/2013">GoingNative
539     website</a>.</p>
540
541     <p>We will be showing lectures from some of the top individuals working on C++
542     approximately biweekly on Thursdays in the PHY 150 theatre. Every lecture will
543     be accompanied with free pizza and drinks! Here is our schedule and the planned
544     showings:</p>
545
546     <ul>
547       <li>Thu. Oct. 3,  6:30PM: Stroustrup - The Essence of C++</li>
548       <li>Thu. Oct. 17, 6:30PM: Lavavej - Don't Help The Compiler</li>
549       <li>Thu. Oct. 31, 6:30PM: Meyers - An Effective C++ Sampler</li>
550       <li>Thu. Nov. 7,  6:30PM: Alexandrescu - Writing Quick C++ Code, Quickly</li>
551       <li>Thu. Nov. 21, 6:30PM: Parent - C++ Seasoning</li>
552     </ul>
553   </abstract>
554 </eventitem>
555
556 <eventitem date="2013-10-17" time="6:30PM" room="PHY 150"
557            title="C++ Night 0x02 - Don't Help The Compiler">
558   <short><p>
559     The second in a series of recorded talks from GoingNative 2013. Featuring
560 Stephan T. Lavavej.
561   </p></short>
562   <abstract><p>
563     The second in a series of recorded talks from GoingNative 2013. Featuring
564 Stephan T. Lavavej.
565   </p><p>
566     C++ has powerful rules for dealing with low-level program structure.
567 Before a program is ever executed, the compiler determines valuable information
568 about every expression in the source code.  The compiler understands exactly
569 how long each object's resources will be needed (lifetime), whether each
570 expression refers to an object that the program has no other way of accessing
571 (rvalueness), and what operations can be performed on each object (type).
572 Using examples from C++98 through C++14, this presentation will demonstrate how
573 to write code that works with the compiler's knowledge to increase robustness,
574 efficiency, and clarity.  This presentation will also demonstrate the horrible
575 things that happen when programmers think they can do tasks that are better
576 left to compilers.
577   </p></abstract>
578 </eventitem>
579
580
581 <eventitem date="2013-10-31" time="6:30PM" room="PHY 150"
582            title="C++ Night 0x03 - An Effective C++11/14 Sampler">
583   <short><p>
584     The third in a series of recorded talks from GoingNative 2013. Featuring
585 Scott Meyers.
586   </p></short>
587   <abstract><p>
588     The third in a series of recorded talks from GoingNative 2013. Featuring
589 Scott Meyers.
590   </p><p>
591     After years of intensive study (first of C++0x, then of C++11, and most
592 recently of C++14), Scott thinks he finally has a clue. About the effective use
593 of C++11, that is (including C++14 revisions). At last year’s Going Native,
594 Herb Sutter predicted that Scott would produce a new version of Effective C++
595 in the 2013-14 time frame, and Scott’s working on proving him almost right.
596 Rather than revise Effective C++, Scott decided to write a new book that
597 focuses exclusively on C++11/14: on the things the experts almost always do (or
598 almost always avoid doing) to produce clear, efficient, effective code. In this
599 presentation, Scott will present a taste of the Items he expects to include in
600 Effective C++11/14.
601   </p></abstract>
602 </eventitem>
603
604
605 <eventitem date="2013-11-07" time="6:30PM" room="PHY 150"
606            title="C++ Night 0x04 - Writing Quick Code in C++, Quickly">
607   <short><p>
608     The fourth in a series of recorded talks from GoingNative 2013. Featuring
609 Andrei Alexandrescu.
610   </p></short>
611   <abstract><p>
612     The fourth in a series of recorded talks from GoingNative 2013. Featuring
613 Andrei Alexandrescu.
614   </p><p>
615     Contemporary computer architectures make it possible for slow code to work
616 reasonably well. They also make it difficult to write really fast code that
617 exploits the CPU amenities to their fullest. And the smart money is on fast
618 code—we’re running out of cool things to do with slow code, and the battle will
619 be on doing really interesting and challenging things at the envelope of what
620 the computing fabric endures.
621   </p><p>
622     So how to write quick code, quickly? Turns out it’s quite difficult because
623 today’s complex architectures defy simple rules to be applied everywhere. It is
624 not uncommon that innocuous high-level artifacts have a surprisingly high
625 impact on the bottom line of an application’s run time (and power consumed).
626   </p><p>
627     This talk is an attempt to set forth a few pieces of tactical advice for
628 writing quick code in C++. Applying these is not guaranteed to produce optimal
629 code, but is likely to put it reasonably within the ballpark.  </p><p>
630     These tips are based on practical experience but also motivated by the
631 inner workings of modern CPUs.
632   </p></abstract>
633 </eventitem>
634
635
636 <eventitem date="2013-11-21" time="6:30PM" room="PHY 150"
637            title="C++ Night 0x05 - C++ Seasoning">
638   <short><p>
639     The fifth in a series of recorded talks from GoingNative 2013. Featuring
640 Sean Parent.
641   </p></short>
642   <abstract><p>
643     The fifth in a series of recorded talks from GoingNative 2013. Featuring
644 Sean Parent.
645   </p><p>
646     A look at many of the new features in C++ and a couple of old features you
647 may not have known about. With the goal of correctness in mind, we’ll see how
648 to utilize these features to create simple, clear, and beautiful code. Just a
649 little pinch can really spice things up.
650   </p></abstract>
651 </eventitem>
652
653
654 <eventitem date="2013-10-30" time="6:00PM" room="Bingemans"
655            title="CSC Goes Bowling">
656   <short><p>
657     All CSC members and their guests are invited for a night of free bowling at
658     Bingemans! Transportation will be provided. If you are interested in attending,
659     please RSVP using the online form by Oct. 18. You can find it by viewing this
660     event in detail.
661   </p></short>
662   <abstract><p>
663     We are pleased to kick off the term with free bowling for all interested
664     members at Bingemans! Transportation will be provided. If you are interested in
665     attending, please RSVP using <a href="http://goo.gl/FsZIfK">this online
666     form</a> by Oct. 18.</p>
667
668     <p>Please note the event date change (Oct. 23 to Oct. 30).
669     The bus will be leaving from the Davis Center at 6:00PM sharp on the 30th.
670   </p></abstract>
671 </eventitem>
672
673
674 <eventitem date="2013-09-17" time="4:30 PM" room="Comfy Lounge"
675            title="Fall 2013 Elections">
676   <short><p>
677      Elections for Fall 2013 are being held! The Executive will be elected,
678      and the Office Manager and Librarian will be appointed by the new
679      executive.
680   </p></short>
681   <abstract>
682     <p>It's elections time again! On Tuesday, Sept 17 at 4:30PM, come to the Comfy Lounge
683     on the 3rd floor of the MC to vote in this term's President, Vice-President, Treasurer
684     and Secretary. The Sysadmin, Librarian, and Office Manager will also be chosen at this time.</p>
685
686     <p>Nominations are open until 4:30PM on Monday, Sept 16, and can be written
687     on the CSC office whiteboard (yes, you can nominate yourself). Full CSC
688     members can vote and are invited to drop by. You may also send nominations to
689     the <a href="mailto:cro@csclub.uwaterloo.ca"> Chief Returning Officer</a>. A
690     full list of candidates will be posted when nominations close.</p>
691
692     <p>Nominations are now closed. The candidates are:</p>
693     <ul>
694       <li>President:<ul>
695         <li>Dominik Ch&#0322;obowski (<tt>dchlobow</tt>)</li>
696         <li>Elana Hashman (<tt>ehashman</tt>)</li>
697         <li>Sean Hunt (<tt>scshunt</tt>)</li>
698         <li>Marc Burns (<tt>m4burns</tt>)</li>
699         <li>Matt Thiffault (<tt>mthiffau</tt>)</li>
700       </ul></li>
701       <li>Vice-President:<ul>
702         <li>Dmitri Tkatch (<tt>dtkatch</tt>)</li>
703         <li>Marc Burns (<tt>m4burns</tt>)</li>
704         <li>Sean Hunt (<tt>scshunt</tt>)</li>
705         <li>Visha Vijayanand (<tt>vvijayan</tt>)</li>
706       </ul></li>
707       <li>Treasurer:<ul>
708         <li>Bernice Herghiligiu (<tt>baherghi</tt>)</li>
709         <li>Dominik Ch&#0322;obowski (<tt>dchlobow</tt>)</li>
710         <li>Jonathan Bailey (<tt>jj2baile</tt>)</li>
711         <li>Marc Burns (<tt>m4burns</tt>)</li>
712       </ul></li>
713       <li>Secretary:<ul>
714         <li>Dominik Ch&#0322;obowski (<tt>dchlobow</tt>)</li>
715         <li>Edward Lee (<tt>e45lee</tt>)</li>
716         <li>Marc Burns (<tt>m4burns</tt>)</li>
717       </ul></li>
718     </ul>
719   </abstract>
720 </eventitem>
721
722 <!-- Spring 2013 -->
723 <eventitem date="2013-07-26" time="7:00PM" room="Comfy Lounge" title="Code Party 1">
724   <short><p>
725     Come out to the Code Party happening in the Comfy Lounge on July 26 at 7:00 PM!
726     Why sleep when you could be hacking on $your_favourite_project or doing
727     $something_classy in great company? Join us for a night of coding, snacks,
728     and camaraderie!
729   </p></short>
730   <abstract><p>
731     Come out to the Code Party happening in the Comfy Lounge on July 26 at 7:00 PM!
732     Why sleep when you could be hacking on $your_favourite_project or doing
733     $something_classy in great company? Join us for a night of coding, snacks,
734     and camaraderie!
735   </p></abstract>
736 </eventitem>
737
738 <eventitem date="2013-07-22" time="5:00PM" room="MC 4020"
739 title="The Future of 3D Graphics is in Software!">
740   <short><p>
741     Convergence between CPU and GPU approaches to processing sets the stage for an
742     exciting transition to 3D rendering that takes place entirely in software.
743     TransGaming's Nicolas Capens and Gavriel State will speak about this convergence
744     and how it will influence the future of graphics.
745   </p></short>
746   <abstract><p>
747     For some time now, it has been clear that there is strong momentum for convergence
748     between CPU and GPU technologies. Initially, each technology used radically different
749     approaches to processing, but over time GPUs have evolved to support more general
750     purpose use while CPUs have evolved to include advanced vector processing and multiple
751     execution cores. At TransGaming, we believe that this convergence will continue to the
752     point where typical systems have only one type of processing unit, with large numbers
753     of cores and very wide vector execution units available for high performance parallel
754     execution. In this kind of environment, all graphics processing will ultimately take
755     place in software.
756   </p><p>
757     In this talk, we will explore the converging nature of CPU and GPU approaches to
758     processing, how dynamic specialization allows CPUs to efficiently perform tasks usually
759     done by GPUs, and why we believe that the increased flexibility of more programmable
760     architectures will ultimately win out over fixed function hardware, even in areas such
761     as texture sampling.
762   </p><p>
763     <strong>TransGaming Inc.</strong> works at the cutting edge of 3D graphics, building
764     technologies that bridge the gap between platform boundaries to allow games to be played
765     on a variety of devices and operating systems. TransGaming works with other industry
766     leaders to update established APIs such as OpenGL, while also breaking new ground in
767     software rendering technology, which we believe will become increasingly important as
768     CPU and GPU technologies converge.
769   </p><p>
770     <strong>Nicolas Capens</strong> is the architect of SwiftShader, TransGaming's high
771     performance software renderer, and is also deeply involved in the ANGLE project, which
772     provides efficient translation from OpenGL ES to Direct3D APIs for implementing WebGL
773     on Windows. Nicolas received his MSci.Eng. degree in computer science from Ghent
774     University in 2007.
775   </p><p>
776     <strong>Gavriel State (Gav)</strong> is TransGaming's Founder and CTO, and has worked in
777     graphics and portability for over 20 years on dozens of platforms and APIs. Gav wrote
778     his first software renderer when taking CS488 at UW, where he later graduated with a
779     B.A.Sc. in Systems Design Engineering.
780   </p></abstract>
781 </eventitem>
782
783 <eventitem date="2013-07-19" time="7:00PM" room="EV3 Fire Pit" title="CSC Goes Outside!">
784   <short><p>
785     Do you love the combination of s'mores, burgers, and fire? Are you brave enough to
786     face the newly-grown geese? Do you want to play some Frisbee while listening to some
787     chill tunes? If so, come hang out with the CSC at the EV3 Fire Pit this Friday!
788     All are welcome for some outdoor food, games, and music.
789   </p></short>
790   <abstract><p>
791     Do you love the combination of s'mores, burgers, and fire? Are you brave enough to
792     face the newly-grown geese? Do you want to play some Frisbee while listening to some
793     chill tunes? If so, come hang out with the CSC at the EV3 Fire Pit this Friday!
794     All are welcome for some outdoor food, games, and music.
795   </p></abstract>
796 </eventitem>
797
798 <eventitem date="2013-07-18" time="5:00PM" room="MC 4041" title="Path Tracing">
799   <short><p>
800     As a follow on to last term's tutorial on building a ray-tracer from scratch,
801     this talk will be presenting the basic mechanics of how a bidirectional path-tracer
802     creates a globally illuminated scene, advantages and limitations of this approach over
803     other offline global illumination techniques along with a simple example path-tracer
804     written in C++, and opportunities for hardware acceleration on GPUs, time permitting.
805   </p></short>
806   <abstract><p>
807     As a follow on to last term's tutorial on building a ray-tracer from scratch,
808     this talk will be presenting the basic mechanics of how a bidirectional path-tracer
809     creates a globally illuminated scene, advantages and limitations of this approach over
810     other offline global illumination techniques along with a simple example path-tracer
811     written in C++, and opportunities for hardware acceleration on GPUs, time permitting.
812   </p></abstract>
813 </eventitem>
814
815 <eventitem date="2013-07-11" time="5:00PM" room="MC 4041" title="3D Movies and Computer Science">
816   <short><p>
817     While humans started making 3D motion pictures in the 1800's, several technical and
818     artistic challenges prevented widespread interest in the medium.  By investing heavily
819     in a computerized production pipeline, James Cameron's 2009 release of Avatar ushered
820     in an era of mainstream interest in 3D film.  However, many technical and artistic
821     problems still find their way into otherwise-modern 3D movies.  The talk explores some
822     of these problems while introducing the fundamentals of 3D film-making from a CS
823     perspective.
824   </p></short>
825   <abstract><p>
826     While humans started making 3D motion pictures in the 1800's, several technical and
827     artistic challenges prevented widespread interest in the medium.  By investing heavily
828     in a computerized production pipeline, James Cameron's 2009 release of Avatar ushered
829     in an era of mainstream interest in 3D film.  However, many technical and artistic
830     problems still find their way into otherwise-modern 3D movies.  The talk explores some
831     of these problems while introducing the fundamentals of 3D film-making from a CS
832     perspective.
833   </p></abstract>
834 </eventitem>
835
836 <!-- <eventitem date="2013-07-05" time="7:00PM" room="EV3 Fire Pit" title="CSC Goes Outside">
837   <short><p>
838     Come hang out with the CSC for s'mores, burgers, Frisbees, and fire this Friday!
839     We will be hanging out at the EV3 Fire Pit starting at 7:00PM. All are welcome to
840     partake in the food, games, and music. See you there!
841   </p></short>
842   <abstract><p>
843     Do you love the combination of s'mores, burgers, and fire? Are you brave enough to face
844     the newly-grown geese? Do you want to play some Frisbee? If so, come hang out with the CSC
845     at the EV3 Fire Pit this Friday!
846     All are welcome for some outdoor fun, food, games, and music.
847   </p>
848   <p>
849     If you have any questions or concerns, please contact exec@csclub.uwaterloo.ca.
850   </p></abstract>
851 </eventitem> -->
852
853 <eventitem date="2013-06-07" time="6:00 PM, 8:00PM" room="Comfy Lounge" title="Unix 101/ Code Party 0">
854   <short><p>
855     We are offering a Unix tutorial on Friday, June 7th, 2013! Following the tutorial a code party will take place.
856     Bring your laptops and chargers for an awesome night of coding, hacking and learning.
857     All are welcome to join in the comfy lounge!
858   </p></short>
859   <abstract>
860     <p>We are offering a Unix tutorial on Friday, June 7th, 2013 at 6:00pm! Following the tutorial a code party will take place.
861     Bring your laptops and chargers for an awesome night of coding, hacking and learning.
862     All are welcome to join in the comfy lounge!</p>
863
864     <p>If you have any questions about Unix101/ Code Party 0 please contact exec@csclub.uwaterloo.ca. </p>
865
866     <p>Hope to see you there!</p>
867   </abstract>
868 </eventitem>
869
870 <eventitem date="2013-05-15" time="6:00 PM" room="Comfy Lounge" title="Spring 2013 Elections">
871   <short><p>
872      Elections for Spring 2013 are being held! The Executive will be elected,
873      and the Office Manager and Librarian will be appointed by the new
874      executive.
875   </p></short>
876   <abstract>
877     <p>It's elections time again! On Wednesday, May 15 at 6:00PM, come to the Comfy Lounge
878     on the 3rd floor of the MC to vote in this term's President, Vice-President, Treasurer
879     and Secretary. The Sysadmin, Librarian, and Office Manager will also be chosen at this time.</p>
880
881     <p>Nominations are open until 4:30PM on Tuesday, May 14, and can be written
882     on the CSC office whiteboard (yes, you can nominate yourself). Full CSC
883     members can vote and are invited to drop by. You may also send nominations to
884     the <a href="mailto:cro@csclub.uwaterloo.ca"> Chief Returning Officer</a>. A
885     full list of candidates will be posted when nominations close, along with
886     instructions for voting remotely.</p>
887
888     <p>Good luck to our candidates!</p>
889   </abstract>
890 </eventitem>
891
892 <!-- Winter 2013 -->
893 <eventitem date="2013-04-01" time="7:00 PM" room="Comfy Lounge" title="Code Party 1">
894         <short>
895 <p>The Computer Science Club is running the second 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>
896         </short>
897         <abstract>
898 <p>The Computer Science Club is running the second 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>
899         </abstract>
900 </eventitem>
901
902 <eventitem date="2013-04-01" time="6:00 PM" room="MC 3003" title="Unix 101">
903         <short>
904 <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 tutorial on using Unix this upcoming Monday. Topics that will be covered include basic interaction with the shell and use of myriad powerful tools.</p>
905         </short>
906         <abstract>
907 <p>New to the Unix computing environment? If you seek an introduction, look no further. We will be holding a tutorial on using Unix this upcoming Monday. Topics that will be covered include basic interaction with the shell and use of myriad powerful tools.</p>
908 <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.</p>
909         </abstract>
910 </eventitem>
911
912 <eventitem date="2013-03-21" time="4:30 PM" room="MC 4020" title="Using Computers to Find Evidence in Litigation">
913     <short>
914 <p>Professor Gordon Cormack will be presenting a talk on using machine-learning based spam filters to accurately locate relevent electronic documents - a process which has typically been very manual, and very expensive.</p>
915     </short>
916     <abstract>
917 <p>In a lawsuit, each party is typically entitled to Discovery, in which the
918 other party is compelled to produce any "documents" in its possession that
919 may be pertinent to the case.   Documents include not only traditional
920 paper documents, but email messages, text messages, computer files, and
921 other electronically stored information, or ESI.  Suppose you were
922 compelled to produce every document in your possession pertaining to
923 software downloads or purchases?  How would you do it?   If you were a
924 large corporation, you would probably hire an army of lawyers to read all
925 your email, plus your assignments, and any other files on your UW account,
926 your laptop, your phone, and your tablet, at a cost of one dollar or more
927 per file.  As a CSC member, you know there must be a better way.  But what
928 is that better way, and how do you convince the court to let you use it?</p>
929 <p>It turns out that spam filters that employ machine learning can do this job
930 well -- better than that army of lawyers.  But lawyers aren't happy about
931 this.  This talk will outline how the technology works and how to prove
932 that it works, so as to convince scientists, lawyers, and judges.</p>
933     </abstract>
934 </eventitem>
935
936 <eventitem date="2013-02-28" time="4:30 PM" room="DC 1302" title="Machine Architecture, Performance, and Scalability: Things Your Programming Language Never Told You">
937     <short>
938     <p>"Herb Sutter is a leading authority on software development. He is the best selling author of several books including Exceptional C++ and C++ Coding Standards, as well as hundreds of technical papers and articles [and] has served for a decade as chair of the ISO C++ standards committee." - http://herbsutter.com/about</p>
939     </short>
940     <abstract>
941 <p>High-level languages insulate the programmer from the machine. That's a
942 wonderful thing -- except when it obscures the answers to the fundamental
943 questions of "What does the program do?" and "How much does it cost?"</p>
944 <p>The C++ and C# programmer is less insulated than most, and still we find
945 that programmers are consistently surprised at what simple code actually
946 does and how expensive it can be -- not because of any complexity of a
947 language, but because of being unaware of the complexity of the machine on
948 which the program actually runs.</p>
949 <p>This talk examines the "real meanings" and "true costs" of the code we
950 write and run especially on commodity and server systems, by delving into
951 the performance effects of bandwidth vs. latency limitations, the
952 ever-deepening memory hierarchy, the changing costs arising from the
953 hardware concurrency explosion, memory model effects all the way from the
954 compiler to the CPU to the chipset to the cache, and more -- and what you
955 can do about them.</p>
956     </abstract>
957 </eventitem>
958
959 <eventitem date="2013-01-16" time="4:00 PM" room="Comfy Lounge" title="Elections">
960     <short>
961     <p>CSC Elections have begun for the Winter 2013 term, nominations are open!</p>
962     </short>
963     <abstract>
964 <p>It's elections time again! On Wednesday January 16th at 4:00PM, come to the Comfy Lounge
965 on the 3rd floor of the MC to vote in this term's President, Vice-President, Treasurer
966 and Secretary. The sysadmin, librarian, and office manager will also be chosen at this time.</p>
967
968 <p>Nominations are open until 4:00PM on Tuesday January 15th, and can be
969 written on the CSC office whiteboard (yes, you can nominate yourself). All CSC members
970 can vote and are invited to drop by. You may also send nominations to the
971 <a href="mailto:cro@csclub.uwaterloo.ca">
972    Chief Returning Officer</a>. A full list of candidates will be posted
973    when nominations close.</p>
974
975     <p>Good luck to our candidates!</p>
976     </abstract>
977 </eventitem>
978
979 <!-- Fall 2012 -->
980
981 <eventitem date="2012-11-23" time="19:00" room="MC 3001" title="Code Party 3">
982         <short>
983                 <p>The Computer Science Club is running our third, and last, code party of the term! Whether you're a hacking guru or a newbie to computer science, you're welcome to attend; there will be activities for all. Syed Albiz will be presenting a tutorial on implementing a <a href="http://en.wikipedia.org/wiki/Ray-tracing">ray-tracer</a> in C and Scheme.</p>
984         </short>
985         <abstract>
986                 <p>The Computer Science Club is running our third, and last, code party of the term! Whether you're a hacking guru or a newbie to computer science, you're welcome to attend; there will be activities for all. Syed Albiz will be presenting a tutorial on implementing a <a href="http://en.wikipedia.org/wiki/Ray-tracing">ray-tracer</a> in C and Scheme. Everyone is welcome, so please bring your friends. There will be foodstuffs and sugary drinks available for your hacking pleasure.</p>
987         </abstract>
988 </eventitem>
989
990 <eventitem date="2012-11-21" time="4:30 PM" room="MC 5136B" title="SASMS">
991    <short>
992       <p><i>by PMC.</i>The Pure Mathematics, Applied Mathematics, Combinatorics &amp; Optimization Club is hosting the Fall 2012 Short Attention Span Math Seminars (SASMS).</p>
993    </short>
994    <abstract>
995       <p>The Pure Mathematics, Applied Mathematics, Combinatorics &amp; Optimization Club is hosting the Fall 2012 Short Attention Span Math Seminars (SASMS).</p>
996       <p>All talks will be 25 minutes long, and everyone is welcome to give a talk. Applications for speaking are open until the day of the event. For event details, see <a href="http://pmclub.uwaterloo.ca/?q=content/sasms-fall-2012">the PMC event page.</a></p>
997    </abstract>
998 </eventitem>
999
1000 <eventitem date="2012-11-19" time="3:30 PM" room="MC 3003" title="UNIX 101">
1001   <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 Monday. Topics that will be covered include basic interaction with the shell and use of myriad powerful tools. </p></short>
1002   <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 Monday. Topics that will be covered include basic interaction with the shell and use of myriad powerful tools. </p>
1003 <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, which will be held the week of the 26th.</p>
1004 </abstract>
1005 </eventitem>
1006
1007 <eventitem date="2012-11-15" time="7:00 PM" room="DC 1302" title="KW Perlmongers Talk">
1008    <short>
1009       <p><i>by Justin Wheeler.</i>In his own words, this talk will cover the virtues
1010       of Perl: CPAN, Moose, CPAN, Catalyst, CPAN, DBIx::Class, CPAN,
1011       TMTOWTDI, and did I mention CPAN?</p>
1012    </short>
1013    <abstract>
1014       <p>In his own words, this talk will cover the virtues
1015       of Perl: CPAN, Moose, CPAN, Catalyst, CPAN, DBIx::Class, CPAN,
1016       TMTOWTDI, and did I mention CPAN?</p>
1017       <p>If you've never used Perl before, don't be scared away by the
1018       jargon&mdash;the talk should be accessible to all CS students, and even if
1019       you find it hard to follow, we will be serving pizza!      </p>
1020    </abstract>
1021 </eventitem>
1022
1023 <eventitem date="2012-10-26" time="7:00 PM" room="MC 3001" title="CSC Code
1024 Party 2">
1025    <short>
1026       <p>We will be holding our second code party of the term. Watch for
1027          further details, as we plan on working with some robots and Scala,
1028          git, and Haskell.</p>
1029    </short>
1030    <abstract>
1031       <p>We will be holding our second code party of the term. Watch for
1032          further details, as we plan on working with some robots and Scala,
1033          git, and Haskell.</p>
1034    </abstract>
1035 </eventitem>
1036
1037 <eventitem date="2012-10-18" time="4:00 PM" room="MC 2034" title="The
1038 Cryptographic and Game-Theoretical Fundamentals behind Bitcoin">
1039    <short>
1040       <p><i>by Vitalik Buterin.</i> In this talk, we will cover the
1041          cryptographic and game-theory principles behind the currency, including
1042          how the issues of double-spending, the "51% attack," and "mining" are
1043          addressed, the game-theory incentives to use Bitcoins honestly, and
1044          other issues being faced today in practice, such as implementation,
1045          attacks, and future scalability.</p>
1046         </short>
1047         <abstract>
1048                 <p><i>by Vitalik Buterin.</i> Interested in learning more about Bitcoin,
1049          the independent digital cryptographic cash? Then this is the talk for
1050          you!</p>
1051
1052       <p>In his talk, Vitalik will cover the cryptographic and game-theory
1053          principles behind the currency, including how the issues of
1054          double-spending, the "51% attack," and "mining" are addressed, the
1055          game-theory incentives to use Bitcoins honestly, and other issues being
1056          faced today in practice, such as implementation, attacks, and future
1057          scalability.</p>
1058
1059       <p>Refreshments will be provided.</p>
1060         </abstract>
1061 </eventitem>
1062
1063 <eventitem date="2012-09-28" time="7:00 PM" room="PHY 150" title="Tron Screening: Frosh-A-Tron">
1064         <short>
1065                 <p>ehashman's lousy frosh event naming scheme continues as we prepare for this week's movie night---a screening of the original TRON in PHY 150. Come watch the groundbreaking film that defined the role of computer graphics and the quality of special effects in modern cinema. And bring your friends!</p>
1066         </short>
1067         <abstract>
1068                 <p>ehashman's lousy frosh event naming scheme continues as we prepare for this week's movie night---a screening of the original TRON in PHY 150. Come watch the groundbreaking film that defined the role of computer graphics and the quality of special effects in modern cinema. And bring your friends!</p>
1069         </abstract>
1070 </eventitem>
1071
1072 <eventitem date="2012-09-14" time="19:00" room="MC 3001" title="Code Party 1: FROSH-A-THON">
1073         <short>
1074                 <p>The Computer Science Club is running our first "welcome back" code party of the term! Whether you're a hacking guru or a newbie to computer science, you're welcome to attend; there will be activities for all! Our party is loosely themed as a Linux installfest, where we will have a team of members dedicated to helping individuals install and learn to use one of many flavours of Linux.</p>
1075         </short>
1076         <abstract>
1077                 <p>The Computer Science Club is running our first "welcome back" code party of the term! Whether you're a hacking guru or a newbie to computer science, you're welcome to attend; there will be activities for all! Our party is loosely themed as a Linux installfest, where we will have a team of members dedicated to helping individuals install and learn to use one of many flavours of Linux. Everyone is welcome, so please bring your friends. There will be foodstuffs and sugary drinks available for your hacking pleasure.</p>
1078         </abstract>
1079 </eventitem>
1080
1081 <eventitem date="2012-09-18" time="4:00 PM" room="Comfy Lounge" title="Elections">
1082     <short>
1083     <p>CSC Elections have begun for the Fall 2012 term, nominations are open!</p>
1084     </short>
1085     <abstract>
1086 <p>It's elections time again! On Tuesday September 18th at 4:00PM, come to the Comfy Lounge
1087 on the 3rd floor of the MC to vote in this term's President, Vice-President, Treasurer
1088 and Secretary. The sysadmin, librarian, and office manager will also be chosen at this time.</p>
1089
1090 <p>Nominations are open until 4:00PM on Monday September 17th, and can be
1091 written on the CSC office whiteboard (yes, you can nominate yourself). All CSC members
1092 can vote and are invited to drop by. You may also send nominations to the
1093 <a href="mailto:cro@csclub.uwaterloo.ca">
1094    Chief Returning Officer</a>. A full list of candidates will be posted
1095    when nominations close.</p>
1096
1097     <p>Good luck to our candidates!</p>
1098     </abstract>
1099 </eventitem>
1100
1101 <eventitem date="2012-09-06" time="17:00" room="Math 3 Atrium" title="SCS First-year Welcome Dinner">
1102         <short>
1103                 <p>The School of Computer Science is hosting a dinner event for incoming first-year students. You'll get to meet us, some of the faculty, and other new undergraduates. Food will be provided.</p>
1104         </short>
1105         <abstract>
1106                 <p>The School of Computer Science is hosting a dinner event for incoming first-year students. You'll get to meet us, some of the faculty, and other new undergraduates. Food will be provided.</p>
1107         </abstract>
1108 </eventitem>
1109
1110 <!-- Spring 2012 -->
1111
1112 <eventitem date="2012-06-08" time="19:00:00" room="MC 3001" title="Code Party 1">
1113         <short>
1114                 <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>
1115         </short>
1116         <abstract>
1117                 <p>             </p>
1118                 <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>
1119         </abstract>
1120 </eventitem>
1121
1122 <eventitem date="2012-05-10" time="4:30 PM" room="Comfy Lounge" title="Elections">
1123     <short>
1124     <p>CSC Elections have begun for the Spring 2012 term, nominations are open!</p>
1125     </short>
1126     <abstract>
1127 <p>It's elections time again! On Thursday May 10th at 4:30PM, come to the Comfy Lounge
1128 on the 3rd floor of the MC to vote in this term's President, Vice-President, Treasurer
1129 and Secretary. The sysadmin, librarian, and office manager will also be chosen at this time.</p>
1130
1131 <p>Nominations are open until 4:30PM on Wednesday May 9th, and can be
1132 written on the CSC office whiteboard (yes, you can nominate yourself). All CSC members
1133 who have paid their Mathsoc fee can vote and are invited to drop by.
1134 You may also send nominations to the <a href="mailto:cro@csclub.uwaterloo.ca">
1135    Chief Returning Officer</a>. A full list of candidates will be posted
1136    when nominations close.</p>
1137
1138     <p>Good luck to our candidates!</p>
1139     </abstract>
1140 </eventitem>
1141
1142 <eventitem date="2012-05-07" time="6:00 PM" room="DC 1302" title="mmap and the Mortgage Crisis">
1143     <short>
1144     <p>Palantir is a Palo Alto-based intelligence analysis software company that has partnered with the CSC to put on a tech talk and social. There will be free food, free drinks, and for one lucky winner, a free iPad, so why not come on out?</p>
1145     </short>
1146     <abstract>
1147 <p>In the aftermath of the 2008 economic crisis, large banks have been saddled with the prospect of foreclosing on millions of distressed mortgages, at a financial cost of billions of dollars and an incalculable social cost.  Crucial to solving this problem is the ability to model and analyze these millions of loans in real time, enabling lenders to price homes so that they can find effective and mutually beneficial alternatives to foreclosure.</p>
1148
1149 <p>In this talk, we'll describe how engineers at Palantir are working on a calculation engine that supports such analyses. We'll outline our design goals of constructing a platform that supports queries against large sets of data at interactive speeds and exposes a high-level object-oriented interface that enables analysts to construct models intuitively without having to worry about the underlying implementation details. We'll describe the different architectures we explored in prototyping the system, demo how to use our product to analyze massive datasets, and discuss how we've ultimately deployed it in the field.</p>
1150     </abstract>
1151 </eventitem>
1152
1153
1154 <!-- Winter 2012 -->
1155
1156 <eventitem date="2012-03-22" time="4:30 PM" room="MC 4021" title="Multi-processor Real-time Systems">
1157   <short>
1158     <p><i>by Bill Cowan</i>. Programming systems that obey hard real-time constraints is difficult. So is programming multiple CPUs that interact to solve a single problem. This talk will describe the nature of computation typical of real-time systems, architectural solutions currently employed in CS 452, and possible architectures for multi-CPU systems.</p>
1159   </short>
1160   <abstract>
1161     <p>
1162       Programming systems that obey hard real-time constraints is difficult. So is programming multiple CPUs that interact to solve a single problem.
1163     </p>
1164     <p>
1165       On rare occasions it is possible to mix two difficult problems to create one easy problem and multi-CPU real-time is, on the face of it, just such an occasion. Give each deadline its own CPU and it will never be missed. This intuition is, unfortunately, incorrect, which does not, however, prevent it being tried in many real-time systems.
1166     </p>
1167     <p>
1168       For three decades, fourth year students have been exploring this problem in CS452, using multiple tasks (virtual CPUs) running on a single CPU. It is now time to consider whether modern developments in CPU architecture make it possible to use multiple CPUs in CS452 given the practical constraint of a twelve week semester.
1169     </p>
1170     <p>
1171       This talk will describe the nature of computation typical of real-time systems, architectural solutions currently employed in the course, and possible architectures for multi-CPU systems.
1172     </p>
1173   </abstract>
1174 </eventitem>
1175
1176 <eventitem date="2012-03-08" time="5:30 PM" room="MC 3003" title="UNIX 102">
1177   <short>
1178     <p><i>by Calum T. Dalek</i>. The Computer Science Club will be running the
1179 second installment of our introductory UNIX tutorials for the term. We
1180 will be covering topics intended to show off the development-friendliness of
1181 the UNIX computing environment: "real" document editors, development tools,
1182 bash scripting, and version control.
1183     </p>
1184   </short>
1185   <abstract>
1186     <p>New to the UNIX computing environment? If you seek an introduction, look
1187 no further. We will be covering more advanced topics in the second installment
1188 of our introductory tutorials, that will help you become a more effective
1189 developer.
1190     </p>
1191     <p>We will be introducing "real" document editors, bash scripting, and
1192 version control. We'll prove to you how much more efficient you can develop
1193 with these tools and teach you how to do it for yourself. It will save you hours
1194 of work!
1195     </p>
1196   </abstract>
1197 </eventitem>
1198
1199 <eventitem date="2012-03-02" time="7:00 PM" room="MC 3001" title="OpenCL Code Party">
1200   <short>
1201     <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.
1202     </p>
1203   </short>
1204   <abstract>
1205     <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.
1206     </p>
1207   </abstract>
1208 </eventitem>
1209
1210 <eventitem date="2012-03-07" time="5:30 PM" room="PHY 150" title="Feynman Messenger Lecture Series">
1211   <short>
1212     <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!
1213     </p>
1214   </short>
1215   <abstract>
1216     <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>
1217     <ul>
1218       <li><b>Feb. 29, 5:30-6:30 PM:</b> <i>Law of Gravitation: An Example of Physical Law</i></li>
1219       <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>
1220       <li><b>Mar. 14, 5:30-6:30 PM:</b> <i>Symmetry in Physical Law</i></li>
1221       <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>
1222       <li><b>Mar. 28, 5:30-6:30 PM:</b> <i>Seeking New Laws</i></li>
1223     </ul>
1224     <p>Dinner will be provided, so come on out, relax in the comfy PHY 150 theatre, and enjoy. Hope to see you there!</p>
1225   </abstract>
1226 </eventitem>
1227
1228 <eventitem date="2012-02-16" time="7:00 PM" room="MC 3001" title="OpenCL Introduction">
1229   <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>
1230   <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>
1231 <p></p>
1232 </abstract>
1233 </eventitem>
1234
1235 <eventitem date="2012-02-09" time="5:00 PM" room="MC 3003" title="UNIX 101">
1236   <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>
1237   <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>
1238 <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>
1239 </abstract>
1240 </eventitem>
1241
1242 <eventitem date="2012-02-07" time="6:00 PM" room="MC 4045" title="Algorithms Talk">
1243   <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>
1244   <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>
1245
1246 <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>
1247 </eventitem>
1248
1249 <eventitem date="2012-01-27" time="6:30 PM" room="Math CnD" title="Code Party 0">
1250   <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>
1251   <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>
1252 </eventitem>
1253
1254 <eventitem date="2012-01-12" time="4:30 PM" room="Comfy Lounge" title="Elections">
1255     <short>
1256     <p>CSC Elections have begun for the Winter 2012 term, nominations are open!</p>
1257     </short>
1258     <abstract>
1259 <p>It's elections time again! On Thursday January 12th at 4:30PM, come to the Comfy Lounge
1260 on the 3rd floor of the MC to vote in this term's President, Vice-President, Treasurer
1261 and Secretary. The sysadmin, librarian and office manager will also be chosen at this time.</p>
1262
1263 <p>Nominations are open until 4:30PM on Wednesday January 11th, and can be
1264 written on the CSC office whiteboard (yes, you can nominate yourself). All CSC members
1265 who have paid their Mathsoc fee can vote and are invited to drop by.
1266 You may also send nominations to the <a href="mailto:cro@csclub.uwaterloo.ca">
1267    Chief Returning Officer</a>. A full list of candidates will be posted
1268    when nominations close.</p>
1269
1270     <p>Good luck to our candidates!</p>
1271     </abstract>
1272 </eventitem>
1273
1274 <!-- Fall 2011 -->
1275 <eventitem date="2011-11-18" time="7:00 PM" room="Comfy Lounge" title="CSC Open Data Code Party">
1276   <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>
1277   <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>
1278
1279     <p>As always, you're welcome to work on your own projects, but we'll be hacking on some open data related projects:
1280       <ol>
1281         <li>Design and build UW APIs.</li>
1282         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.
1283         <li>Applications using university data that is currently available.</li>
1284       </ol>
1285      </p>
1286      <p>If you'd like to discuss your ideas for these proposed projects, check out the newsgroup, uw.csc</p></abstract>
1287 </eventitem>
1288
1289 <eventitem date="2011-11-12" time="7:30 AM" room="Davis Centre" title="CSC goes to Design Our Tomorrow">
1290
1291     <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>
1292
1293     <abstract><p>
1294 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>
1295
1296 <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>
1297
1298 <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>
1299
1300 <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>
1301
1302 <p>We hope that you will join us.
1303 </p></abstract>
1304
1305 </eventitem>
1306 <eventitem date="2011-10-24" time="4:30 PM" room="MC 3003" title="UNIX 102: Tools in the UNIX Environment">
1307
1308     <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.
1309 </p></short>
1310
1311     <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>
1312
1313 </eventitem>
1314 <eventitem date="2011-10-21" time="7 PM" room="Comfy Lounge" title="Code Party 2">
1315         <short>
1316                 <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>
1317         </short>
1318         <abstract>
1319                 <p>
1320                  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.
1321                 </p>
1322
1323                 <p>
1324                 There will be 3 more code parties this term.
1325                 </p>
1326         </abstract>
1327 </eventitem>
1328 <eventitem date="2011-10-13" time="6:30 PM" room="MC 4020" title="How Browsers Work">
1329         <short>
1330                 <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>
1331         </short>
1332         <abstract>
1333                 <p>
1334 Web browsers have evolved. From their humble beginnings as simple HTML
1335 rendering engines they have grown and evolved into rich application
1336 platforms. This talk will start with the fundamentals: how a browser
1337 creates an on-screen representation of the resources downloaded from
1338 the network. (Boring, right? But we have to start somewhere.) From
1339 there we'll get into the really exciting stuff: the latest innovations
1340 in Web browsers and how those innovations enable — even encourage —
1341 developers to build more complex applications than ever before. You'll
1342 see real-world examples of people building technologies on top of
1343 these "simple rendering engines" that seemed impossible a short time
1344 ago.
1345
1346 Bio of the speaker:
1347 Ehsan Akhgari has contributed to the Mozilla project for more than 5
1348 years.  He has worked on various parts of Firefox, including the user
1349 interface and the rendering engine.  He originally implemented Private
1350 Browsing in Firefox.  Right now he's focusing on the editor component
1351 in the Firefox engine.
1352                 </p>
1353
1354                 <p>
1355                 There will be 4 more code parties this term.
1356                 </p>
1357         </abstract>
1358 </eventitem>
1359 <eventitem date="2011-09-30" time="7 PM" room="Comfy Lounge" title="Code Party 1">
1360         <short>
1361                 <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>
1362         </short>
1363         <abstract>
1364                 <p>
1365                 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.
1366                 </p>
1367
1368                 <p>
1369                 There will be 4 more code parties this term.
1370                 </p>
1371         </abstract>
1372 </eventitem>
1373 <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">
1374         <short>
1375                 <p><i>by Calum T. Dalek</i>. New to Unix? No problem, we'll teach you to power use circles around your friends!</p>
1376         </short>
1377         <abstract>
1378                 <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>
1379         </abstract>
1380 </eventitem>
1381 <eventitem date="2011-09-19" edate="2011-09-19" time="4:30 PM" etime="5:30 PM" room="Comfy Lounge" title="Elections">
1382         <short>
1383                 <p>
1384                 Club elections. See related news items for details.
1385                 </p>
1386         </short>
1387         <abstract>
1388                 Club elections. See related news items for details.
1389         </abstract>
1390 </eventitem>
1391
1392 <!-- Spring 2011 -->
1393 <eventitem date="2011-07-29" time="6 PM" room="home of askhader, see abstract" title="CTRL-D">
1394         <short>
1395                 <p>
1396                 The end of another term is here, and so we're having our End-of-Term dinner.
1397
1398                 Everybody's welcome to come to CTRL-D. We are running this like a potluck, so bringing food is suggested.
1399                 </p>
1400         </short>
1401         <abstract>
1402                 <a href="http://csclub.uwaterloo.ca/~askhader/">askhader's</a> house is at: <br/>
1403                 9 Cardill Cresent<br/>
1404                 Waterloo, ON<br/>
1405         </abstract>
1406 </eventitem>
1407 <eventitem date="2011-07-22" time="7 PM" room="Comfy Lounge" title="Code Party 3">
1408         <short>
1409                 <p>
1410                         The final Code Party of the term is here!  Come hack on some code,
1411                         solve some puzzles, and have some fun. The event starts in the evening and will run
1412                         all night.  You can show up for any portion of it.  You should bring a laptop, and
1413                         probably have something in mind to work on, though you're welcome with neither.
1414                 </p>
1415                 <p>
1416                         Snacks will be provided.  Everyone is welcome.
1417                 </p>
1418                 <p>
1419                         Please note this date is postponed from the originally scheduled date due to
1420                         conflicts with <a href="http://www.kitchenerribandbeerfest.com/">Kitchener Ribfest &amp; Craft Beer Show</a>
1421                 </p>
1422         </short>
1423 </eventitem>
1424
1425 <eventitem date="2011-07-20" time="4:30 PM" room="MC 2038" title="An Introduction to Steganography">
1426         <short>
1427                 <p>
1428                         As part of the CSC member talks series, Yomna Nasser will be presenting an introduction to steganography.
1429                         Steganography is the act of hiding information such that it can only be found by its intended recipient.
1430                         It has been practiced since ancient Greece, and is still in use today.
1431                 </p>
1432                 <p>
1433                         This talk will include an introduction to the area, history, and some basic techniques for hiding information
1434                         and detecting hidden data.  There will be an overview of some of the mathematics involved, but nothing too
1435                         rigorous.
1436                 </p>
1437         </short>
1438 </eventitem>
1439
1440 <eventitem date="2011-07-09" time="4 PM to 10PM" room="Columbia Lake Firepit"
1441         title="CSC Goes Outside">
1442         <short> <p> Do you like going outside?  Are you
1443                         vitamin-D deficient from being in the MC too long?  Do you think
1444                         marshmallows, hotdogs, and fire are a delicious combination?  </p>
1445
1446                 <p> If so, you should join us as the CSC is going outside!  </p>
1447
1448                 <p> Around 4PM, we're going to Columbia Lake for some outdoor fun.
1449                         We'll have Frisbees, kites, snacks, and some drinks.  We'll be
1450                         sticking around until dusk, when we're going to have a campfire
1451                         with marshmallows and hotdogs.  We plan to be there until 10PM, but
1452                         of course you're welcome to come for any subinterval.  </p>
1453         </short>
1454 </eventitem>
1455 <eventitem date="2011-07-04" time="1:30 PM" room="MC 5158" title="Our Troubles with Linux and Why You Should Care">
1456         <short>
1457                 <p>
1458                 A joint work between Professors Tim Brecht, Ashif Harji, and
1459                 Peter Buhr, this talk describes experiences using the Linux
1460                 kernel as a platform for conducting performance evaluations.
1461                 </p>
1462         </short>
1463         <abstract>
1464                 <p>
1465                 Linux provides researchers with a full-fledged operating system that is
1466                 widely used and open source. However, due to its complexity and rapid
1467                 development, care should be exercised when using Linux for performance
1468                 experiments, especially in systems research. The size and continual
1469                 evolution of the Linux code-base makes it difficult to understand, and
1470                 as a result, decipher and explain the reasons for performance
1471                 improvements. In addition, the rapid kernel development cycle means
1472                 that experimental results can be viewed as out of date, or meaningless,
1473                 very quickly. We demonstrate that this viewpoint is incorrect because
1474                 kernel changes can and have introduced both bugs and performance
1475                 degradations.
1476                 </p>
1477                 <p>
1478                 This talk describes some of our experiences using the Linux kernel as a
1479                 platform for conducting performance evaluations and some performance
1480                 regressions we have found. Our results show, these performance
1481                 regressions can be serious (e.g., repeating identical experiments
1482                 results in large variability in results) and long lived despite having
1483                 a large negative impact on performance (one problem appears to have
1484                 existed for more than 3 years). Based on these experiences, we argue
1485                 that it is often reasonable to use an older kernel version,
1486                 experimental results need careful analysis to explain why a change in
1487                 performance occurs, and publishing papers that validate prior research
1488                 is essential.
1489                 </p>
1490                 <p>
1491                 This is joint work with Ashif Harji and Peter Buhr.
1492                 </p>
1493                 <p>
1494                 This talk will be about 20-25 minutes long with lots of time for
1495                 questions and discussion afterwards.
1496                 </p>
1497         </abstract>
1498 </eventitem>
1499 <eventitem date="2011-06-24" time="7 PM" room="Comfy Lounge" title="Code Party 2">
1500         <short>
1501                 <p>
1502                         The second Code Party of the term takes place this Friday!  Come hack on some code,
1503                         solve some puzzles, and have some fun. The event starts in the evening and will run
1504                         all night.  You can show up for any portion of it.  You should bring a laptop, and
1505                         probably have something in mind to work on, though you're welcome with neither.
1506                 </p>
1507                 <p>
1508                         Snacks will be provided.
1509                 </p>
1510         </short>
1511 </eventitem>
1512 <eventitem date="2011-06-14" time="4:30 PM" room="MC 2054" title="Taming Software Bloat with AdaptableGIMP">
1513         <short>
1514                 Ever use software with 100s or 1000s of commands? Ever have a hard time
1515                 finding the right commands to perform your task? In this talk, we'll
1516                 present AdaptableGIMP, a new version of GIMP developed at Waterloo to
1517                 help simplify complex user interfaces.
1518         </short>
1519         <abstract>
1520                 <p>
1521                         Ever use software with 100s or 1000s of commands? Ever have a hard time
1522                         finding the right commands to perform your task? We have. And we have
1523                         some new ideas on how to deal with software bloat.
1524                 </p>
1525                 <p>
1526                         In this talk, we'll present AdaptableGIMP, a new version of GIMP
1527                         developed by the HCI Lab here at the University of Watreloo.
1528                         AdaptableGIMP introduces the notion of crowdsourced interface
1529                         customizations: Any user of the application can customize the interface
1530                         for performing a particular task, with that customization instantly
1531                         shared with all other users through a wiki at adaptablegimp.org. In the
1532                         talk, we'll demo this new version of GIMP and show how it can help
1533                         people work faster by simplifying feature-rich, complex user
1534                         interfaces.
1535                 </p>
1536         </abstract>
1537 </eventitem>
1538 <eventitem date="2011-06-09" time="4:30 PM" room="MC 2054"
1539         title="General Purpose Computing on Graphics Cards">
1540         <short>
1541                 In the first of our member talks for the term, Katie Hyatt will give a
1542                 short introduction to General Purpose Graphics Processing Unit
1543                 computing.  This expanding field has many applications. The primary
1544                 focus of this talk will be nVidia's CUDA architecture.
1545         </short>
1546         <abstract>
1547                 <p> This is the first of our member talks for the term, presented by
1548                         CSC member and Waterloo undergraduate student Katie Hyatt
1549                 </p>
1550                 <p>
1551                         GPGPU (general purpose graphics processing unit) computing is an
1552                         expanding area of interest, with applications in physics, chemistry,
1553                         applied math, finance, and other fields. nVidia has created an
1554                         architecture named CUDA to allow programmers to use graphics cards
1555                         without having to write PTX assembly or understand OpenGL. CUDA is
1556                         designed to allow for high-performance parallel computation controlled
1557                         from the CPU while granting the user fine control over the behaviour
1558                         and performance of the device.
1559                 </p>
1560
1561                 <p>
1562                         In this talk, I'll discuss the basics of nVidia's CUDA architecture
1563                         (with most emphasis on the CUDA C extensions), the GPGPU programming
1564                         environment, optimizing code written for the graphics card, algorithms
1565                         with noteworthy performance on GPU, libraries and tools available to
1566                         the GPGPU programmer, and some applications to condensed matter
1567                         physics. No physics background required!
1568                 </p>
1569         </abstract>
1570 </eventitem>
1571 <eventitem date="2011-06-03" time="7 PM" room="Comfy Lounge" title="Code Party 1">
1572         <short>
1573                 The Computer Science Club is having our first code party of the term.
1574                 The theme for this week's code party is personal projects. Come show us
1575                 what you've been working on! Of course, everybody is welcome, even if you
1576                 don't have a project.
1577         </short>
1578         <abstract>
1579                 The Computer Science Club is having our first code party of the term.
1580                 The theme for this week's code party is personal projects. Come show us
1581                 what you've been working on! Of course, everybody is welcome, even if you
1582                 don't have a project.
1583
1584                 Personal projects are a great way to flex your CS muscles, and learn interesting
1585                 and new things. Come out and have some fun!
1586
1587                 Two more are scheduled for later in the term.
1588         </abstract>
1589 </eventitem>
1590 <eventitem date="2011-05-09" time="5:31 PM" room="Comfy Lounge" title="Elections Nominees List">
1591     <short>
1592     <p>CSC Elections, final list of nominations for Spring 2011</p>
1593     </short>
1594     <abstract>
1595     <p>The nominations are:
1596     <ul>
1597     <li>President: jdonland, mimcpher, mthiffau</li>
1598     <li>Vice-President: jdonland, mimcpher</li>
1599     <li>Treasurer: akansong, kspaans</li>
1600     <li>Secretary: akansong, jdonland</li>
1601     </ul>
1602     </p>
1603     </abstract>
1604 </eventitem>
1605
1606 <eventitem date="2011-05-09" time="5:30 PM" room="Comfy Lounge" title="Elections">
1607     <short>
1608     <p>CSC Elections have begun for the Spring 2011 term, nominations are open!</p>
1609     </short>
1610     <abstract>
1611     <p>It's time to elect your CSC executive for the Spring 2011 term. The
1612        elections will be held on Monday May 9th at 5:30PM in the Comfy Lounge
1613        on the 3rd floor of the MC. Nominations can be sent to the Chief
1614        Returning Officer, <a href="mailto:cro@csclub.uwaterloo.ca">cro@csclub.uwaterloo.ca</a>.
1615        Nominations will be open until 4:30PM on Monday May 9th. You can also stop by the office in
1616        person to write your nominations on the white board.</p>
1617
1618     <p>The executive positions open for nomination are:
1619     <ul>
1620     <li>President</li>
1621     <li>Vice-President</li>
1622     <li>Treasurer</li>
1623     <li>Secretary</li>
1624     </ul>
1625        There are also numerous positions that will be appointed once the
1626        executive are elected including systems administrator, office manager,
1627        and librarian.</p>
1628
1629     <p>Everyone is encouraged to run if they are interested, regardless of
1630        program of study, age, or experience. If you can't make the election,
1631        that's OK too! You can give the CRO a statement to read on your
1632        behalf. If you can't make it or are out of town, your votes can be
1633        sent to the CRO in advance of the elections. For the list of nominees,
1634        watch the CSC website, or ask the CRO.</p>
1635
1636     <p>Good luck to our candidates!</p>
1637     </abstract>
1638 </eventitem>
1639
1640 <!-- Winter 2011 -->
1641 <eventitem date="2011-03-17" time="04:30 PM" room="MC2034" title="Software Patents">
1642
1643     <short><p><i>by Stanley Khaing</i>. What are the requirements for obtaining a patent? Should software be patentable?</p></short>
1644
1645 <abstract>
1646         <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>
1647         <ul>
1648         <li>What are the requirements for obtaining a patent?</li>
1649         <li>Should software be patentable?</li>
1650         </ul>
1651 </abstract>
1652
1653 </eventitem>
1654
1655 <eventitem date="2011-02-17" time="07:00 PM" room="MC2017" title="A Smorgasbord of Perl Talks">
1656
1657     <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>
1658
1659 <abstract>
1660         <p>Tyler Slijboom will present:</p>
1661
1662         <ul>
1663         <li>Prototyping in Perl,</li>
1664         <li>Perl Default Variables,</li>
1665         <li>HOWTO on OO Programming, and</li>
1666         <li>HOWTO on Installing and Using Modules from CPAN</li>
1667         </ul>
1668
1669         <p>Daniel Allen will present:</p>
1670
1671         <ul>
1672         <li>Coping with Other Peoples' Code</li>
1673         </ul>
1674
1675         <p>Justin Wheeler will present:</p>
1676
1677         <ul>
1678         <li>Moose: a Modern Perl Framework</li>
1679         </ul>
1680 </abstract>
1681
1682 </eventitem>
1683
1684 <eventitem date="2011-02-09" time="04:30 PM" room="MC3003" title="UNIX 103: Version Control Systems">
1685
1686     <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.
1687 </p></short>
1688
1689     <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>
1690
1691 </eventitem>
1692
1693 <eventitem date="2011-02-04" time="07:00 PM" room="Comfy Lounge" title="Code Party">
1694
1695     <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>
1696
1697     <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>
1698
1699 </eventitem>
1700
1701 <eventitem date="2011-02-02" time="04:30 PM" room="MC3003" title="UNIX 102: Documents and Editing in the Unix environment">
1702
1703     <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.
1704 </p></short>
1705
1706     <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>
1707
1708 </eventitem>
1709
1710 <eventitem date="2011-01-26" time="04:30 PM" room="MC3003" title="UNIX 101: An Introduction to the Shell">
1711
1712     <short><p><i>by Calum T. Dalek</i>. New to Unix? No problem, we'll teach you to power use circles around your friends!
1713 </p></short>
1714
1715
1716     <abstract><p>This first tutorial is an introduction to the Unix shell environment, both on the student
1717 servers and on other Unix environments. Topics covered include: using the shell, both basic
1718 interaction and advanced topics like scripting and job control, the filesystem and manipulating
1719 it, and ssh. If you feel you're already familiar with these topics don't hesitate to come
1720 to Unix 102 to learn about documents, editing, and other related tasks, or watch out
1721 for Unix 103 and 104 that get much more in depth into power programming tools on Unix.
1722 </p></abstract>
1723
1724 </eventitem>
1725
1726
1727 <!-- Fall 2010 -->
1728 <eventitem date="2010-11-17" time="04:30 PM" room="MC4061" title="Mathematics and aesthetics in maze design">
1729
1730     <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.
1731 </p></short>
1732
1733
1734     <abstract><p>For thousands of years, mazes and labyrinths have played
1735 an important role in human culture and myth.  Today, solving
1736 mazes is a popular pastime, whether with pencil on paper
1737 or by navigating through a cornfield.
1738 </p><p>The construction of compelling mazes encompasses a variety of
1739 challenges in mathematics, algorithm design, and aesthetics.
1740 The maze should be visually attractive, but it should also be
1741 an engaging puzzle.  Master designers balance these two goals
1742 with wonderful results.
1743 </p><p>In this talk, I discuss the role of the computer in the process
1744 of designing mazes.  I present some well known algorithms for
1745 maze construction, and more recent research that attempts to
1746 novel mazes with non-trivial mathematical or aesthetic properties.
1747 </p></abstract>
1748
1749 </eventitem>
1750 <eventitem date="2010-11-13" time="12:00 PM" room="Outside DC" title="CSC Invades Toronto">
1751
1752     <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.
1753             If you would like to come along, please come by the office and sign up. The cost for the trip is $2 per member.
1754
1755         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
1756             board.</p></short>
1757
1758 </eventitem>
1759
1760 <eventitem date="2010-11-05" time="07:00 PM" room="CnD Lounge (MC3002)" title="Hackathon">
1761
1762     <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.
1763 </p></short>
1764
1765
1766     <abstract><p>Come join the CSC for a night of code, music with only 8 bits, and comradarie. We will be
1767 in the C&amp;D Lounge from 7pm until 7am working on personal projects, open source projects, and
1768 whatever else comes to mind. If you're interested in getting involved in free/open source development,
1769 some members will be on hand to guide you through the process.
1770 </p></abstract>
1771
1772 </eventitem>
1773
1774 <eventitem date="2010-10-26" time="04:30 PM" room="MC4040" title="Analysis of randomized algorithms via the probabilistic method">
1775
1776     <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.
1777 </p></short>
1778
1779
1780     <abstract><p>The probabilistic method is an extremely powerful tool in combinatorics that can be
1781 used to prove many surprising results.  The idea is the following: to prove that an
1782 object with a certain property exists, we define a distribution of possible objects
1783 and use show that, among objects in the distribution, the property holds with
1784 non-zero probability.  The key is that by using the tools and techniques of
1785 probability theory, we can vastly simplify proofs that would otherwise require very
1786 complicated combinatorial arguments.
1787 </p><p>As a technique, the probabilistic method developed rapidly during the latter half of
1788 the 20th century due to the efforts of mathematicians like Paul Erdős and increasing
1789 interest in the role of randomness in theoretical computer science.  In essence, the
1790 probabilistic method allows us to determine how good a randomized algorithm's output
1791 is likely to be.  Possibly applications range from graph property testing to
1792 computational geometry, circuit complexity theory, game theory, and even statistical
1793 physics.
1794 </p><p>In this talk, we will give a few examples that illustrate the basic method and show
1795 how it can be used to prove the existence of objects with desirable combinatorial
1796 properties as well as produce them in expected polynomial time via randomized
1797 algorithms.  Our main goal will be to present a very slick proof from 1995 due to
1798 Spencer on the performance of a randomized greedy algorithm for a set-packing
1799 problem.  Spencer, for seemingly no reason, introduces a time variable into his
1800 greedy algorithm and treats set-packing as a Poisson process.  Then, like magic,
1801 he is able to show that his greedy algorithm is very likely to produce a good
1802 result using basic properties of expected value.
1803 </p><p>Properties of Poisson and Binomial distributions will be applied, but I'll remind
1804 everyone of the needed background for the benefit of those who might be a bit rusty.
1805 Stat 230 will be more than enough. Big O notation will be used, but not excessively.
1806 </p></abstract>
1807
1808 </eventitem>
1809
1810 <eventitem date="2010-10-19" time="04:30 PM" room="RCH 306" title="Machine learning vs human learning - will scientists become obsolete?">
1811
1812     <short><p><i>by Dr. Shai Ben-David</i>.
1813 </p></short>
1814
1815
1816     <abstract><p>
1817 </p></abstract>
1818
1819 </eventitem>
1820
1821 <eventitem date="2010-10-13" time="04:30 PM" room="MC3003" title="UNIX 102">
1822
1823     <short><p>This installment in the CS Club's popular Unix tutorials UNIX 102 introduces powerful text editing tools for programming and document formatting.
1824 </p></short>
1825
1826
1827     <abstract><p>Unix 102 is a follow up to Unix 101, requiring basic knowledge of the shell.
1828 If you missed Unix101 but still know your way around you should be fine.
1829 Topics covered include: "real" editors, document typesetting with LaTeX
1830 (great for assignments!), bulk editing, spellchecking, and printing in the
1831 student environment and elsewhere.
1832 </p></abstract>
1833
1834 </eventitem>
1835 <eventitem date="2010-10-06" time="04:30 PM" room="MC3003" title="UNIX 103">
1836
1837     <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).
1838 </p></short>
1839
1840
1841     <abstract><p>Unix 103 will cover version control systems and how to use them to manage
1842 your projects. Unix 101 would be helpful, but all that is needed is basic
1843 knowledge of the Unix command line (how to enter commands).
1844 </p></abstract>
1845
1846 </eventitem>
1847
1848 <eventitem date="2010-10-12" time="04:30 PM" room="MC4061" title="How to build a brain: From single neurons to cognition">
1849
1850     <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.
1851 </p></short>
1852
1853
1854     <abstract><p><i>By Dr. Chris Eliasmith</i>. Theoretical neuroscience is a new discipline focused on constructing
1855 mathematical models of brain function.  It has made significant
1856 headway in understanding aspects of the neural code.  However,
1857 past work has largely focused on small numbers of neurons, and
1858 so the underlying representations are often simple. In this
1859 talk I demonstrate how the ideas underlying these simple forms of
1860 representation can underwrite a representational hierarchy that
1861 scales to support sophisticated, structure-sensitive
1862 representations.  I will present a general architecture, the semantic
1863 pointer architecture (SPA), which is built on this hierarchy
1864 and allows the manipulation, processing, and learning of structured
1865 representations in neurally realistic models.  I demonstrate the
1866 architecture on Progressive Raven's Matrices (RPM), a test of
1867 general fluid intelligence.
1868 </p></abstract>
1869
1870 </eventitem>
1871
1872 <eventitem date="2010-10-04" time="04:30 PM" room="MC4021" title="BareMetal OS">
1873
1874     <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.
1875 </p></short>
1876
1877
1878     <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,
1879 while applications can be written in Assembly or C/C++.
1880 High Performance Computing is the main target application.
1881 </p></abstract>
1882
1883 </eventitem>
1884
1885 <eventitem date="2010-09-28" time="04:30 PM" room="MC4061" title="A Brief Introduction to Video Encoding">
1886
1887     <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.
1888 </p></short>
1889
1890
1891     <abstract><p><i>By Peter Barfuss</i>. With the recent introduction of digital TV and the widespread success
1892 of video sharing websites such as youtube, it is clear that the task
1893 of lossily compressing video with good quality has become important.
1894 Similarly, the complex algorithms involved require high amounts of
1895 optimization in order to run fast, another important requirement for
1896 any video codec that aims to be widely used/adopted.
1897 </p><p>In this talk, I
1898 will go over the concepts used in video encoding (such as motion
1899 estimation/compensation, inter- and intra- frame prediction,
1900 quantization and entropy encoding), and then demonstrate these
1901 concepts and algorithms in use in the MPEG-2 and the H.264 video
1902 codecs. In addition, some clever optimization tricks using
1903 SIMD/vectorization will be covered, assuming sufficient time to cover
1904 these topics.
1905 </p></abstract>
1906
1907 </eventitem>
1908
1909 <eventitem date="2010-09-23" time="04:30 PM" room="DC1301 (The Fishbowl)" title="Calling all CS Frosh">
1910
1911     <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.
1912 </p></short>
1913
1914
1915     <abstract><p>Come meet and greet your professors, advisors, and the heads of the school.
1916 Talk to the CSC executive and other upper year students about CS at Waterloo.
1917 Free food and beverages will also be available, so there is really no excuse
1918 to miss this.
1919 </p></abstract>
1920
1921 </eventitem>
1922 <eventitem date="2010-09-29" time="04:30 PM" room="MC3003" title="Unix 101">
1923
1924     <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.
1925 </p></short>
1926
1927
1928     <abstract><p>Need to use the Unix environment for a course, want to overcome your fears of
1929 the command line, or just curious? Attend the first installment in the CSC's
1930 popular series of Unix tutorails to learn the basics of the shell and how to
1931 navigate the unix environment. By the end of the hands on workshop you will
1932 be able to work efficiently from the command line and power-use circles around
1933 your friends.
1934 </p></abstract>
1935
1936 </eventitem>
1937
1938 <eventitem date="2010-09-22" time="06:00 PM" room="MC4045" title="Cooking for Geeks">
1939
1940     <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.
1941 </p></short>
1942
1943
1944     <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.
1945 Jeff's book has been featured on NPR, BBC and his presentations have wowed audiences of hackers &amp; foodies alike.
1946 We're happy to have Jeff joining us for a hands on demonstration.
1947 </p><p>But you don't have to take our word for it... here's what Jeff has to say:
1948 </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
1949 about my just-released book. I'll talk about the food science behind what makes things yummy, giving you a quick
1950 primer on how to go into the kitchen and have a fun time turning out a good meal.
1951 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.
1952 </p><p>If you have a copy of the book, bring it! I’ll happily sign it.
1953 </p></abstract>
1954
1955 </eventitem>
1956 <eventitem date="2010-09-21" time="04:30 PM" room="MC4061" title="In the Beginning">
1957
1958     <short><p><b>by Dr. Prabhakar Ragde, Cheriton School of Computer Science</b>. I'll be workshopping some lecture ideas involving representations of
1959     numbers, specification of computation in  functional terms, reasoning about
1960     such specifications, and comparing the strengths and weaknesses of  different approaches.
1961 </p></short>
1962
1963
1964     <abstract><p>I'll be workshopping some lecture ideas involving representations
1965     of numbers, specification of computation in
1966     functional terms, reasoning about such specifications, and comparing the
1967     strengths and weaknesses of
1968     different approaches. No prior background is needed; the talk should be accessible
1969     to anyone attending
1970     the University of Waterloo and, I hope, interesting to both novices and experts.
1971 </p></abstract>
1972
1973 </eventitem>
1974 <eventitem date="2010-09-14" time="04:30 PM" room="Comfy Lounge" title="Elections">
1975   <short><p>Fall term executive elections and general meeting.</p></short>
1976 </eventitem>
1977
1978 <!-- Spring 2010 -->
1979
1980 <eventitem date="2010-07-20" time="04:30 PM" room="MC2066" title="The Incompressibility Method">
1981 <short>
1982 In this talk, we shall explore the incompressibility method---an interesting and
1983 extremely powerful framework for determining the average-case runtime of
1984 algorithms.  Within the right background knowledge, the heapsort question can be
1985 answered with an elegant 3-line proof.
1986 </short>
1987 <abstract>
1988 <p>Heapsort. It runs in $\Theta(n \log n)$ time in the worst case, and in $O(n)$
1989     time in the best case.  Do you think that heapsort runs faster than $O(n
1990     \log n)$ time on average?  Could it be possible that on most inputs,
1991     heapsort runs in $O(n)$ time, running more slowly only on a small fraction
1992     of inputs?</p>
1993 <p>Most students would say no. It "feels" intuitively obvious that heapsort
1994     should take the full $n \log n$ steps on most inputs.  However, proving this
1995     rigourously with probabilistic arguments turns out to be very difficult.
1996     Average case analysis of algorithms is one of those icky subjects that most
1997     students don't want to touch with a ten foot pole; why should it be so
1998     difficult if it is so intuitively obvious?</p>
1999 <p>In this talk, we shall explore the incompressibility method---an interesting
2000     and extremely powerful framework for determining the average-case runtime of
2001     algorithms.  Within the right background knowledge, the heapsort question
2002     can be answered with an elegant 3-line proof.</p>
2003 <p>The crucial fact is that an overwhelmingly large fraction of randomly
2004     generated objects are incompressible. We can show that the inputs to
2005     heapsort that run quickly correspond to inputs that can be compressed,
2006     thereby proving that heapsort can't run quickly on average.  Of course,
2007     "compressible" is something that must be rigourously defined, and for this
2008     we turn to the fascinating theory of Kolmogorov complexity.</p>
2009 <p>In this talk, we'll briefly discuss the proof of the incompressibility
2010     theorem and then see a number of applications.  We won't dwell too much on
2011     gruesome mathemtical details.  No specific background is required, but
2012     knowledge of some of the topics in CS240 will be helpful in understanding
2013     some of the applications.</p>
2014 </abstract>
2015 </eventitem>
2016
2017 <eventitem date="2010-07-13" time="04:30 PM" room="MC2066" title="Halftoning and Digital Art">
2018     <short><p>Edgar Bering will be giving a talk titled: Halftoning and Digital Art</p></short>
2019     <abstract><p>Halftoning is the process of simulating a continuous tone image
2020         with small dots or regions of one colour. Halftoned images may be seen
2021         in older newspapers with a speckled appearance, and to this day colour
2022         halftoning is used in printers to reproduce images. In this talk I will
2023         present various algorithmic approaches to halftoning, with an eye not
2024         toward exact image reproduction but non-photorealistic rendering and
2025         art. Included in the talk will be an introduction to digital paper
2026         cutting and a tutorial on how to use the CSC's paper cutter to render
2027         creations.
2028 </p></abstract>
2029 </eventitem>
2030
2031
2032 <eventitem date="2010-07-09" time="07:00 PM" room="MC Comfy" title="Code Party">
2033     <short><p>There is a CSC Code Party Friday starting at 7:00PM (1900)
2034             until we get bored (likely in the early in morning). Come out for
2035             fun hacking times.
2036     </p></short>
2037     <abstract><p>There is a CSC Code Party Friday starting at 7:00PM (1900)
2038             until we get bored (likely in the early in morning). Come out for
2039             fun hacking times.
2040     </p></abstract>
2041 </eventitem>
2042
2043 <eventitem date="2010-07-06" time="04:30 PM" room="MC2054" title="Dataflow Analysis">
2044   <short><p>Nomair Naeem, a P.H.D. Student at Waterloo, will be giving a talk about Dataflow Analysis</p></short>
2045   <abstract><p>
2046     After going through an introduction to Lattice Theory and a formal treatment to
2047     Dataflow Analysis Frameworks, we will take an in-depth view of the
2048     Interprocedural Finite Distributive Subset (IFDS) Algorithm which implements a
2049     fully context-sensitive, inter-procedural static dataflow analysis. Then, using
2050     a Variable Type Analysis as an example, I will outline recent extensions that we
2051     have made to open up the analysis to a larger variety of static analysis
2052     problems and making it more efficient.
2053     </p><p>
2054     The talk is self-contained and no prior knowledge of program analysis is
2055     necessary.
2056   </p></abstract>
2057 </eventitem>
2058
2059 <eventitem date="2010-06-22" time="04:30 PM" room="MC2066" title="Compiling To Combinators">
2060   <short><p>Professor Ragde will be giving the first of our Professor talks for the Spring 2010 term.</p></short>
2061   <abstract><p>
2062     Number theory was thought to be mathematically appealing but practically
2063     useless until the RSA encryption algorithm demonstrated its considerable
2064     utility. I'll outline how combinatory logic (dating back to 1920) has a
2065     similarly unexpected application to efficient and effective compilation,
2066     which directly catalyzed the development of lazy functional programming
2067     languages such as Haskell. The talk is self-contained; no prior knowledge
2068     of functional programming is necessary.
2069   </p></abstract>
2070 </eventitem>
2071
2072 <eventitem date="2010-05-25" time="05:00 PM" room="MC2066" title="Gerald Sussman">
2073   <short><p>Why Programming is a Good Medium for Expressing Poorly Understood and Sloppily Formulated Ideas</p></short>
2074   <abstract>Full details found <a href="http://csclub.uwaterloo.ca/misc/sussman/">here</a></abstract>
2075 </eventitem>
2076
2077 <eventitem date="2010-05-26" time="03:30 PM" room="MC5136" title="Gerald Sussman">
2078   <short><p>Public Reception</p></short>
2079   <abstract>Full details found <a href="http://csclub.uwaterloo.ca/misc/sussman/">here</a></abstract>
2080 </eventitem>
2081
2082 <eventitem date="2010-05-26" time="05:000PM" room="MC5158" title="Gerald Sussman">
2083   <short><p>The Art of the Propagator</p></short>
2084   <abstract>Full details found <a href="http://csclub.uwaterloo.ca/misc/sussman/">here</a></abstract>
2085 </eventitem>
2086
2087 <eventitem date="2010-05-11" time="05:30 PM" room="Comfy Lounge" title="Elections">
2088   <short><p>Spring term executive elections and general meeting.</p></short>
2089 </eventitem>
2090
2091 <!-- Winter 2010 -->
2092 <eventitem date="2010-04-06" time="04:30 PM" room="DC1304" title="Brush-Based Constructive Solid Geometry">
2093
2094     <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.
2095 </p></short>
2096
2097
2098     <abstract><p>For some would-be graphics programmers, the biggest barrier-to-entry is getting data to render. This is why there exist so
2099 many terrain renderers: by virtue of the fact that rendering height-fields tends to give pretty pictures from next to no
2100 "created" information. However, it becomes more difficult when programmers want to do indoor rendering (in the style of the
2101 Quake and Unreal games). Ripping map information from the Quake games is possible (and fairly simple), but their tool-chain
2102 is fairly clumsy from the point of view of adding a conversion utility.
2103 </p><p>My talk is about Constructive Solid Geometry from a Brush-based perspective (nearly identical to Unreal's and still very similar
2104 to Quake's). The basic idea is that there are brushes (convex volumes in 3-space) and they can either be additive (solid brushes)
2105 or subtractive (hollow, or air brushes). The entire world starts off as an infinite solid lump and you can start removing sections
2106 of it then adding them back in. The talk pertains to fast methods of taking the list of brushes and generating world geometry. I may
2107 touch on interface problems with the editor, but the primary content will be the different ways I generated the geometry and what I found to be best.
2108 </p></abstract>
2109
2110 </eventitem>
2111 <eventitem date="2010-04-07" time="1:00 PM" room="MC2037" title="Windows Azure Lab">
2112
2113     <short><p>Get the opportunity to learn about Microsoft's Cloud Services Platform, Windows Azure.   Attend this Hands-on-lab session sponsored by Microsoft.
2114 </p></short>
2115
2116
2117     <abstract><p>We are in the midst of an industry shift as developers and businesses embrace the Cloud.
2118 Technical innovations in the cloud are dramatically changing the economics of computing
2119 and reducing barriers that keep businesses from meeting the increasing demands of
2120 today's customers.  The cloud promises choice and enables scenarios that previously
2121 were not economically practical.
2122 </p><p>Microsoft's Windows Azure is an internet-scale cloud computing services platform hosted
2123 in Microsoft data centers.  The Windows Azure platform, allows developers to build and
2124 deploy production ready cloud services and applications. With the Windows Azure platform,
2125 developers can take advantage of greater choice and flexibility in how they develop and
2126 deploy applications, while using familiar tools and programming languages.
2127 </p><p>Get the opportunity to learn about Microsoft's Cloud Services Platform, Windows Azure.
2128 Attend the Hands-on-lab session sponsored by Microsoft.
2129 </p></abstract>
2130
2131 </eventitem>
2132 <eventitem date="2010-04-01" time="6:30 PM" room="CSC Office" title="CTRL-D">
2133
2134     <short><p>Once again the CSC will be holding its traditional end of term dinner. It will be at the Vice President's house. If you don't know how to get there meet at the club office at 6:30 PM, a group will be leaving from the MC then. The dinner will be potluck style so bring a dish for 4-6 people, or some plates or pop or something.
2135 </p></short>
2136
2137
2138     <abstract><p>Once again the CSC will be holding its traditional end of term dinner. It will
2139 be at the Vice President's house. If you don't know how to get there meet
2140 at the club office at 6:30 PM, a group will be leaving from the MC then. The
2141 dinner will be potluck style so bring a dish for 4-6 people, or some plates
2142 or pop or something.
2143 </p></abstract>
2144
2145 </eventitem>
2146 <eventitem date="2010-03-30" time="4:30 PM" room="DC1304" title="NUI: The future of robotics and automated systems">
2147
2148     <short><p>Member Sam Pasupalak will present some of his ongoing work in Natural User Interfaces and Robotics in this sixth installment of CS10.
2149 </p></short>
2150
2151
2152     <abstract><p>Bill Gates in his article “A Robot in every home” in the Scientific American describes how the current
2153 robotics industry resembles the 1970’s of the Personal Computer Industry. In fact it is not just
2154 Microsoft which has already taken a step forward by starting the Microsoft Robotics studio, but robotics
2155 researchers around the world believe that robotics and automation systems are going to be ubiquitous in
2156 the next 10-20 years (similar to Mark Weiser’s analogy of Personal Computers 20 years ago). Natural User
2157 Interfaces (NUIs) are going to revolutionize the way we interact with computers, cellular phones, household
2158 appliances, automated systems in our daily lives. Just like the GUI made personal computing a reality,
2159 I believe natural user interfaces will do the same for robotics.
2160 </p><p>During the presentation I will be presenting my ongoing software project on natural user interfaces as well
2161 as sharing my goals for the future, one of which is to provide an NUI SDK and the other to provide a common
2162 Robotics OS for every hardware vendor that will enable people to make applications without worrying about
2163 underlying functionality. If time permits I would like to present a demo of my software prototype.
2164 </p></abstract>
2165
2166 </eventitem>
2167 <eventitem date="2010-03-26" time="7:00 PM" room="MC7001" title="A Final Party of Code">
2168
2169     <short><p>There is a CSC/CMC Code Party Friday starting at 7:00PM (1900) until we get bored (likely in the early in morning). Come out for fun hacking times, spreading Intertube memes (optional), hacking on open source projects, doing some computational math, and other general classiness. There will be free energy drinks for everyone's enjoyment. This is the last of the term so don't miss out.
2170 </p></short>
2171
2172
2173     <abstract><p>There is a CSC/CMC Code Party Friday starting at 7:00PM (1900) until we
2174 get bored (likely in the early in morning). Come out for fun hacking
2175 times, spreading Intertube memes (optional), hacking on open source projects,
2176 doing some computational math, and other
2177 general classiness. There will be free energy drinks for everyone's
2178 enjoyment. This is the last of the term so don't miss out.
2179 </p></abstract>
2180
2181 </eventitem>
2182 <eventitem date="2010-03-23" time="4:30 PM" room="MC5158" title="Memory-Corruption Security Holes: How to exploit, patch and prevent them.">
2183
2184     <short><p>Despite it being 2010, code is still being exploited due to stack overflows, a 40+ year old class of security vulnerabilities. In this talk, I will go over several common methods of program exploitation, both on the stack and on the heap, as well as going over some of the current mitigation techniques (i.e. stack canaries, ASLR, etc.) for these holes, and similarly, how some of these can be bypassed as well.
2185 </p></short>
2186
2187
2188     <abstract><p>Despite it being 2010, code is still being exploited due to
2189 stack overflows, a 40+ year old class of security vulnerabilities. In
2190 this talk, I will go over several common methods of program
2191 exploitation, both on the stack and on the heap, as well as going over
2192 some of the current mitigation techniques (i.e. stack canaries, ASLR,
2193 etc.) for these holes, and similarly, how some of these can be
2194 bypassed as well.
2195 </p></abstract>
2196
2197 </eventitem>
2198 <eventitem date="2010-03-19" time="7:00 PM" room="Comfy Lounge" title="Another Party of Code">
2199
2200     <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, spreading Intertube memes (optional), hacking on the OpenMoko, creating music mixes, and other general classiness. There will be free energy drinks for everyone's enjoyment.
2201 </p></short>
2202
2203
2204     <abstract><p>There is a CSC Code Party Friday starting at 7:00PM (1900) until we
2205 get bored (likely in the early in morning). Come out for fun hacking
2206 times, spreading Intertube memes (optional), hacking on the OpenMoko,
2207 creating music mixes, and other
2208 general classiness. There will be free energy drinks for everyone's
2209 enjoyment.
2210 </p></abstract>
2211
2212 </eventitem>
2213 <eventitem date="2010-03-16" time="4:30 PM" room="MC5158" title="Approximation Hardness and the Unique Games Conjecture">
2214
2215     <short><p>The fifth installment in CS10: Undergraduate Seminars in CS, features CSC member Elyot Grant introducing the theory of approximation algorithms. Fun times and a lack of gruesome math are promised.
2216 </p></short>
2217
2218
2219     <abstract><p>The theory of NP-completeness suggests that some problems in CS are inherently hard—that is,
2220 there is likely no possible algorithm that can efficiently solve them.  Unfortunately, many of
2221 these problems are ones that people in the real world genuinely want to solve!  How depressing!
2222 What can one do when faced with a real-life industrial optimization problem whose solution may
2223 save millions of dollars but is probably impossible to determine without trillions of
2224 years of computation time?
2225 </p><p>One strategy is to be content with an approximate (but provably "almost ideal") solution, and from
2226 here arises the theory of approximation algorithms.  However, this theory also has a depressing side,
2227 as many well-known optimization problems have been shown to be provably hard to approximate well.
2228 </p><p>This talk shall focus on the depressing.  We will prove that various optimization problems (such as
2229 traveling salesman and max directed disjoint paths) are impossible to approximate well unless P=NP.
2230 These proofs are easy to understand and are REALLY COOL thanks to their use of very slick reductions.
2231 </p><p>We shall explore many NP-hard optimization problems and state the performance of the best known
2232 approximation algorithms and best known hardness results.  Tons of open problems will be mentioned,
2233 including the unique games conjecture, which, if proven true, implies the optimality of many of the
2234 best known approximation algorithms for NP-complete problems like MAX-CUT and INDEPENDENT SET.
2235 </p><p>I promise fun times and no gruesome math.  Basic knowledge of graph theory and computational
2236 complexity might help but is not required.
2237 </p></abstract>
2238
2239 </eventitem>
2240 <eventitem date="2010-03-12" time="7:00 PM" room="Comfy Lounge" title="A Party of Code">
2241
2242     <short><p>A fevered night of code, friends, fun, energy drinks, and the CSC.
2243 </p></short>
2244
2245
2246     <abstract><p>A fevered night of code, friends, fun, energy drinks, and the CSC.
2247 </p><p>Come join us for a night of coding. Get in touch with more experianced coders,
2248 advertize for/bug squash on your favourite open source project, write that personal
2249 project you were planning to do for a while but haven't found the time. Don't
2250 have any ideas but want to sit and hack? We can find something for you to do.
2251 </p></abstract>
2252
2253 </eventitem>
2254
2255 <eventitem date="2010-03-09" time="4:30 PM" room="DC1304" title="Software Transactional Memory and Using STM in Haskell">
2256
2257     <short><p>The fourth Undergraduate Seminar in Computer Science will be presented by Brennan Taylor, a club member. He will be discussing various concurrent computing problems, and introducing Software Transactional Memory as a solution to them.
2258 </p></short>
2259
2260
2261     <abstract><p>Concurrency is hard. Well maybe not hard, but it sure is annoying to get right. Even the
2262 simplest of synchronization tasks are hard to implement correctly when using synchronization
2263 primitives such as locks and semaphores.
2264 </p><p>In this talk we explore what Software Transactional Memory (STM) is, what problems STM solves,
2265 and how to use STM in Haskell. We explore a number of examples that show how easy STM is to use
2266 and how expressive Haskell can be. The goal of this talk is to convince attendees that STM is
2267 not only a viable synchronization solution, but superior to how synchronization is typically
2268 done today.
2269 </p></abstract>
2270
2271 </eventitem>
2272 <eventitem date="2010-03-06" time="5:00 PM" room="Waterloo Bowling Lanes" title="Bowling">
2273     <short><p>The CSC is going bowling. $9.75 for shoes and two games. The bowling alley serves fried food and beer. Join us for
2274     some or all of the above</p></short>
2275 </eventitem>
2276
2277 <eventitem date="2010-03-02" time="4:30 PM" room="DC1304" title="QIP=PSPACE">
2278
2279     <short><p>Dr. John Watrous of the <a href="http://www.iqc.ca">IQC</a> will present his recent result "QIP=PSPACE". The talk will not assume any familiarity with quantum computing or complexity theory, and light refreshments will be provided.
2280 </p></short>
2281
2282
2283     <abstract><p>The interactive proof system model of computation is a cornerstone of
2284 complexity theory, and its quantum computational variant has been
2285 studied in quantum complexity theory for the past decade.  In this
2286 talk I will discuss an exact characterization of the power of quantum
2287 interactive proof systems that I recently proved in collaboration with
2288 Rahul Jain, Zhengfeng Ji, and Sarvagya Upadhyay.  The characterization
2289 states that the collection of computational problems having quantum
2290 interactive proof systems consists precisely of those problems
2291 solvable with an ordinary classical computer using a polynomial amount
2292 of memory (or QIP = PSPACE in complexity-theoretic terminology).  This
2293 characterization implies the striking fact that quantum computing does
2294 not provide any increase in computational power over classical
2295 computing in the context of interactive proof systems.
2296 </p><p>I will not assume that the audience for this talk has any familiarity
2297 with either quantum computing or complexity theory; and to be true to
2298 the spirit of the interactive proof system model, I hope to make this
2299 talk as interactive as possible -- I will be happy to explain anything
2300 related to the talk that I can that people are interested in learning
2301 about.
2302 </p></abstract>
2303
2304 </eventitem>
2305 <eventitem date="2010-02-26" time="7:00 PM" room="CnD Lounge" title="Contest Closing">
2306     <short><p>The <a href="http://contest.csclub.uwaterloo.ca">contest</a> is coming to a close tomorrow, so to finish it in style we will be having ice cream and code friday night.
2307     It would be a shame if Waterloo lost (we're not on top of the <a href="http://csclub.uwaterloo.ca/contest/rankings.php">leaderboard</a> right now) so come out and hack for the home team.</p></short>
2308 </eventitem>
2309
2310 <eventitem date="2010-02-25" time="4:30 PM" room="DC1302" title="CSCF Town Hall">
2311
2312     <short><p>Come to a town hall style meeting with the managers of CSCF to discuss how to improve the undergraduate (student.cs) computing environment. Have gripes? Suggestions? Requests? Now is the time to voice them.
2313 </p></short>
2314
2315
2316     <abstract><p>Come to a town hall style meeting with the managers of CSCF to discuss how
2317 to improve the undergraduate (student.cs) computing environment. Have gripes?
2318 Suggestions? Requests? Now is the time to voice them.
2319 </p><p>CSCF management (Bill Ince, Associate Director; Dave Gawley, Infrastructure Support;
2320 Dawn Keenan, User Support; Lawrence Folland, Research Support) will be at the
2321 meeting to listen to student concerns and suggestions.  Information gathered from
2322 the meeting will be summarized and taken to the CSCF advisory committee for
2323 discussion and planning.
2324 </p></abstract>
2325
2326 </eventitem>
2327
2328 <eventitem date="2010-02-23" time="04:30 PM" room="MC5136B" title="The Best Algorithms are Randomized Algorithms">
2329
2330     <short><p>In this talk Nicholas Harvey discusses the prevalence of randomized algorithms and their application to solving optimization problems on graphs; with startling results compared to deterministic algorithms.
2331 </p></short>
2332
2333
2334     <abstract><p>For many problems, randomized algorithms are either the fastest algorithm or the simplest algorithm;
2335 sometimes they even provide the only known algorithm. Randomized algorithms have become so prevalent
2336 that deterministic algorithms could be viewed as a curious special case. In this talk I will describe
2337 some startling examples of randomized algorithms for solving some optimization problems on graphs.
2338 </p></abstract>
2339
2340 </eventitem>
2341
2342 <eventitem date="2010-02-09" time="4:30 PM" room="DC1304" title="An Introduction to Vector Graphics Libraries with Cairo">
2343
2344     <short><p>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.
2345 </p></short>
2346
2347
2348     <abstract><p>Cairo is an open source, cross platform, vector graphics library with the ability to
2349 output to many kinds of surfaces, including PDF, SVG and PNG surfaces, as well as
2350 X-Window, Win32 and Quartz 2D backends. Unlike the raster graphics used with programmes
2351 and libraries such as The Gimp and ImageMagick, vector graphics are not defined by grids
2352 of pixels, but rather by a collection of drawing operations. These operations detail how to
2353 draw lines, fill shapes, and even set text to create the desired image. This has the
2354 advantages of being infinitely scalable, smaller in file size, and simpler to express within
2355 a computer programme. This talk will be an introduction to the concepts and metaphors used
2356 by vector graphics libraries in general and Cairo in particular.
2357 </p></abstract>
2358
2359 </eventitem>
2360
2361 <eventitem date="2010-02-11" time="4:30 PM" room="MC3005" title="UNIX 101 Encore">
2362
2363     <short><p>New to Unix? No problem, we'll teach you to power use circles around your friends! The popular tutorial returns for a second session, in case you missed the first one.
2364 </p></short>
2365
2366
2367     <abstract><p>New to Unix? No problem, we'll teach you to power use circles around your friends!
2368 The popular tutorial returns for a second session, in case you missed the first one.
2369 </p><p>This first tutorial is an introduction to the Unix shell environment, both on the student
2370 servers and on other Unix environments. Topics covered include: using the shell, both basic
2371 interaction and advanced topics like scripting and job control, the filesystem and manipulating
2372 it, and ssh. If you feel you're already familiar with these topics don't hesitate to come
2373 to Unix 102 to learn about documents, editing, and other related tasks, or watch out
2374 for Unix 103 and 104 that get much more in depth into power programming tools on Unix.
2375 </p></abstract>
2376
2377 </eventitem>
2378 <eventitem date="2010-02-10" time="4:30 PM" room="MC3003" title="UNIX 101">
2379
2380     <short><p>New to Unix? No problem, we'll teach you to power use circles around your friends!
2381 </p></short>
2382
2383
2384     <abstract><p>New to Unix? No problem, we'll teach you to power use circles around your friends!
2385 </p><p>This first tutorial is an introduction to the Unix shell environment, both on the student
2386 servers and on other Unix environments. Topics covered include: using the shell, both basic
2387 interaction and advanced topics like scripting and job control, the filesystem and manipulating
2388 it, and ssh. If you feel you're already familiar with these topics don't hesitate to come
2389 to Unix 102 to learn about documents, editing, and other related tasks, or watch out
2390 for Unix 103 and 104 that get much more in depth into power programming tools on Unix.
2391 </p></abstract>
2392
2393 </eventitem>
2394 <eventitem date="2010-01-18" time="15:30 PM" room="MC2066" title="Wilderness Programming">
2395
2396     <short><p>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.
2397 </p></short>
2398
2399
2400     <abstract><p>Paul Lutus describes his early Apple II software development days, conducted
2401 from the far end of a 1200-foot power cord, in a tiny Oregon cabin. Paul
2402 describes how he wrote a best-seller (Apple Writer) in assembly language,
2403 while dealing with power outages, lightning storms and the occasional
2404 curious bear.
2405 </p><p>Paul also describes his subsequent four-year solo around-the-world sail in a
2406 31-foot boat. And be ready with your inquiries -- Paul will answer your
2407 questions.
2408 </p><p>Paul Lutus has a wide background in science and technology. He designed spacecraft
2409 components for the NASA Space Shuttle and created a mathematical model of the solar
2410 system used during the Viking Mars lander program. Then, at the beginning of the
2411 personal computer revolution, Lutus switched career paths and took up computer
2412 science. His best-known program is "Apple Writer," an internationally successful
2413 word processing program for the early Apple computers.
2414 </p></abstract>
2415
2416 </eventitem>
2417
2418 <eventitem date="2010-01-26" time="05:00 PM" room="DC1302" title="Deep learning with multiplicative interactions">
2419
2420     <short><p>Geoffrey Hinton, from the University of Toronto and the Canadian Institute  for Advanced Research, will discuss some of his latest work in learning networks and artificial intelligence. The talk will be accessable, so don't hesitate to come out. More information about Dr. Hinton's research can be found on  <a href="http://www.cs.toronto.edu/~hinton/">his website</a>.
2421 </p></short>
2422
2423
2424     <abstract><p>Deep networks can be learned efficiently from unlabeled data. The layers
2425 of representation are learned one at a time using a simple learning
2426 module, called a "Restricted Boltzmann Machine" that has only one layer
2427 of latent variables. The values of the latent variables of one
2428 module form the data for training the next module.  Although deep
2429 networks have been quite successful for tasks such as object
2430 recognition, information retrieval, and modeling motion capture data,
2431 the simple learning modules do not have multiplicative interactions which
2432 are very useful for some types of data.
2433 </p><p>The talk will show how a third-order energy function can be factorized to
2434 yield a simple learning module that retains advantageous properties of a
2435 Restricted Boltzmann Machine such as very simple exact inference and a
2436 very simple learning rule based on pair-wise statistics. The new module
2437 contains multiplicative interactions that are useful for a variety of
2438 unsupervised learning tasks. Researchers at the University of Toronto
2439 have been using this type of module to extract oriented energy from image
2440 patches and dense flow fields from image sequences. The new module can
2441 also be used to allow motions of a particular style to be achieved by
2442 blending autoregressive models of motion capture data.
2443 </p></abstract>
2444
2445 </eventitem>
2446
2447
2448 <!-- Fall 2009 -->
2449 <eventitem date="2009-12-05" time="6:30 PM" room="MC3036" edate="2009-12-05" etime="11:55 PM" title="The Club That Really Likes Dinner">
2450     <short><p>Come on out to the club's termly end of term dinner, details in the abstract</p></short>
2451     <abstract><p>The dinner will be potluck style at the Vice President's house, please RSVP (respond swiftly to the vice president)
2452     <a href="https://csclub.uwaterloo.ca/rsvp">here</a> if you plan on attending. If you don't know how to get there meet at the club
2453     office at 6:30 PM, a group will be leaving to lead you there.</p></abstract>
2454 </eventitem>
2455
2456 <eventitem date="2009-11-27" time="7:00 PM" room="Comfy Lounge" edate="2009-11-28" etime="7:00 AM" title="Code Party!!11!!">
2457
2458     <short><p>A fevered night of code, friends, fun, energy drinks, and the CSC. Facebook will be around to bring some food and hang out.
2459 </p></short>
2460
2461
2462     <abstract><p>Come join us for a night of coding. Get in touch with more experianced coders,
2463 advertize for/bug squash on your favourite open source project, write that personal
2464 project you were planning to do for a while but haven't found the time. Don't
2465 have any ideas but want to sit and hack? Try your hand at the Facebook puzzles,
2466 write a new app, or just chill and watch scifi.
2467 </p></abstract>
2468
2469 </eventitem>
2470
2471 <eventitem date="2009-11-05" time="4:30 PM" room="MC2065" title="In the Beginning">
2472
2473     <short><p>To most CS students an OS kernel is pretty low level. But there is something even lower, the instructions that must be executed to get the CPU ready to accept a kernel.  That is, if you look at any processor's reference manual there is a page or two describing the state of the CPU when it powered on.  This talk describes what needs to happen next, up to the point where the first kernel instruction executes.
2474 </p></short>
2475
2476
2477     <abstract><p>To most CS students an OS kernel is pretty low level. But there is
2478 something even lower, the instructions that must be executed to get the
2479 CPU ready to accept a kernel.  That is, if you look at any processor's
2480 reference manual there is a page or two describing the state of the CPU
2481 when it powered on.  This talk describes what needs to happen next,
2482 up to the point where the first kernel instruction executes.
2483 </p><p>This part of execution is extremely architecture-dependent.  Those of
2484 you who have any experience with this aspect of CS probably know the x86
2485 architecture, and think it's horrible, which it is. I am going to talk
2486 about the ARM architecture, which is inside almost all mobile phones,
2487 and which allows us to look at a simple implementation that includes
2488 all the essentials.
2489 </p></abstract>
2490
2491 </eventitem>
2492
2493 <eventitem date="2009-10-20" time="04:30 PM" room="MC3036" title="CSC Goes To Dooly's">
2494
2495     <short><p>We're going to Dooly's to play pool. What more do you want from us? Come to the Club office and we'll all bus there together. We've got discount tables for club members so be sure to be there.
2496 </p></short>
2497
2498
2499     <abstract><p>We're going to Dooly's to play pool. What more do you want from us?
2500 Come to the Club office and we'll all bus there together. We've got
2501 discount tables for club members so be sure to be there.
2502 </p></abstract>
2503
2504 </eventitem>
2505
2506 <eventitem date="2009-10-16" time="7:00 PM" room="Comfy Lounge" title="Code Party and Contest Finale">
2507
2508     <short><p>Come on out for a night of code, contests, and energy drinks. Join the Computer Scinece Club for the finale of the Google AI Challenge and an all night code party. Finish up your entry, or start it (its not too late). Not interested in the contest? Come out anyway for a night of coding and comradarie with us.
2509 </p></short>
2510
2511
2512     <abstract><p>Come on out for a night of code, contests, and energy drinks. Join the Computer
2513 Scinece Club for the finale of the Google AI Challenge and an all night code party.
2514 Finish up your entry, or start it (its not too late). Not interested in the contest?
2515 Come out anyway for a night of coding and comradarie with us.
2516 </p><p>Included in the party will be the contest finale and awards cerimony, so if you've
2517 entered be sure to stick arround to collect the spoils of victory, or see just who
2518 that person you couldn't edge off is.
2519 </p></abstract>
2520
2521 </eventitem>
2522
2523 <eventitem date="2009-10-08" time="4:30 PM" room="MC3003" title="UNIX 103">
2524
2525     <short><p>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.  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.
2526 </p></short>
2527
2528
2529     <abstract><p>In this long-awaited third installment of the popular Unix Tutorials the
2530 friendly experts of the CSC will teach you the simple art of version control.
2531 You will learn the purpose and use of two different Version Control Systems
2532 (git and subversion). This tutorial will advise you in the discipline of
2533 managing the source code of your projects and enable you to quickly learn new
2534 Version Control Systems in the work place -- a skill that is much sought after
2535 by employers.
2536 </p></abstract>
2537
2538 </eventitem>
2539
2540 <eventitem date="2009-10-14" time="2:30 PM" room="DC1304" title="UofT Graduate School Information Session">
2541     <short><p> "Is Graduate School for You?" Get the answers to your grad school questions - and have a bite to eat, our treat</p>
2542     </short>
2543     <abstract><p> Join Prof. Greg Wilson, faculty member in the Software Engineering research group in the UofT's Department of Computer Science,
2544     as he gives insight into studying at the graduate level-what can be expected, what does UofT offer, is it right for you? Pizza and pop will
2545     be served. <b>Come see what grad school is all about!</b>. All undergraduate students are welcome; registration is not required.</p>
2546     <p>For any questions about the program, visit <a href="http://www.cs.toronto.edu/dcs/prospective-grad.html">UofT's website</a>. This
2547     event is not run by the CS Club, and is announced here for the benefit of our members.</p></abstract>
2548 </eventitem>
2549
2550 <eventitem date="2009-10-03" time="10:00 AM" edate="2009-10-03" etime="3:30 PM" room="DC1301 FishBowl" title="Linux Install Fest">
2551
2552     <short><p>Interested in trying Linux but don't know where to start?
2553     Come to the Linux install fest to demo Linux, get help installing it
2554     on your computer, either stand alone or a dual boot, and help setting
2555     up your fresh install. Have lunch and hang around if you like, or just come in for a CD.
2556 </p></short>
2557
2558
2559     <abstract><p>Interested in trying Linux but don't know where to start?
2560 Come to the Linux install fest to demo Linux, get help installing it on
2561 your computer, either stand alone or a dual boot, and help setting
2562 up your fresh install. Have lunch and hang around if you like, or just
2563 come in for a qick install.
2564 </p></abstract>
2565
2566 </eventitem>
2567
2568 <eventitem date="2009-10-01" time="4:30 PM" room="MC3003" title="UNIX 102">
2569
2570     <short><p>The next installment in the CS Club's popular Unix tutorials UNIX 102 introduces powerful text editing tools for programming and document formatting.
2571 </p></short>
2572
2573
2574     <abstract><p>Unix 102 is a follow up to Unix 101, requiring basic knowledge of the shell.
2575 If you missed Unix101 but still know your way around you should be fine.
2576 Topics covered include: "real" editors, document typesetting with LaTeX
2577 (great for assignments!), bulk editing, spellchecking, and printing in the
2578 student environment and elsewhere.
2579 </p><p>If you aren't interested or feel comfortable with these taskes, watch out for
2580 Unix 103 and 104 to get more depth in power programming tools on Unix.
2581 </p></abstract>
2582
2583 </eventitem>
2584
2585 <eventitem date="2009-09-28" time="4:30 PM" edate="2009-10-09" etime="11:59 OM" room="MC3003" title="AI Programming Contest sponsored by Google">
2586
2587     <short><p>Come learn how to write an intelligent game-playing program.
2588       No past experience necessary.  Submit your program using the <a href="http://csclub.uwaterloo.ca/contest/">online web interface</a>
2589       to watch it battle against other people's programs.   Beginners and experts welcome! Prizes provided by google,
2590       including the delivery of your resume to google recruiters.
2591 </p></short>
2592
2593
2594     <abstract><p>Come learn how to write an intelligent game-playing program.
2595         No past experience necessary.  Submit your program using the <a href="http://csclub.uwaterloo.ca/contest/">online
2596         web interface</a> to watch it battle against other people's programs.
2597         Beginners and experts welcome!
2598     </p><p>The contest is sponsored by Google, so be sure to compete for a chance
2599          to get noticed by them.
2600     </p><p>Prizes for the top programs:
2601    <ul><li>$100 in Cash Prizes</li>
2602        <li> Google t-shirts</li>
2603        <li>Fame and recognition</li>
2604        <li>Your resume directly to a Google recruiter</li>
2605    </ul>
2606 </p></abstract>
2607
2608 </eventitem>
2609 <eventitem date="2009-09-24" time="4:30 PM" room="MC3003" title="UNIX 101">
2610
2611     <short><p>
2612         New to Unix? No problem, we'll teach you to power use circles around your friends!
2613     </p></short>
2614
2615
2616     <abstract><p>
2617         New to Unix? No problem, we'll teach you to power use circles around your friends!
2618     </p><p>
2619         This first tutorial is an introduction to the Unix shell environment, both on the student
2620         servers and on other Unix environments. Topics covered include: using the shell, both basic
2621         interaction and advanced topics like scripting and job control, the filesystem and manipulating
2622         it, and ssh. If you feel you're already familiar with these topics don't hesitate to come
2623         to Unix 102 to learn about documents, editing, and other related tasks, or watch out
2624         for Unix 103 and 104 that get much more in depth into power programming tools on Unix.
2625     </p></abstract>
2626 </eventitem>
2627
2628 <eventitem date="2009-09-15" time="5:00PM" edate="2009-09-15" etime="6:00 PM"
2629        room="Comfy Lounge" title="Elections">
2630     <short><p>
2631      Nominations are open now, either place your name on the nominees board or
2632      e-mail <a href="mailto:cro@csclub.uwaterloo.ca">the CRO</a>
2633      to nominate someone for a position.
2634      Come to the Comfy Lounge to elect your fall term executive. Contact
2635      <a href="mailto:cro@csclub.uwaterloo.ca">the CRO</a> if you have questions.
2636     </p></short>
2637 </eventitem>
2638
2639
2640 <!-- Spring 2009 -->
2641 <eventitem date="2009-07-23" time="4:30 PM" edate="2009-07-23" etime="6:00 PM"
2642            room="MC 3003" title="Unix 103">
2643     <short><p>
2644      In this long-awaited third installment of the popular Unix Tutorials the dark
2645      mages of the CSC will train you in the not-so-arcane magick of version control.
2646      You will learn the purpose and use of two different Version Control Systems
2647      (git and subversion). This tutorial will advise you in the discipline of
2648      managing the source code of your projects and enable you to quickly learn new
2649      Version Control Systems in the work place -- a skill that is much sought after
2650      by employers.
2651     </p></short>
2652 </eventitem>
2653
2654 <eventitem date="2009-07-17" time="7:00 PM" edate="2009-07-18" etime="4:00 AM"
2655            room="MC 3001" title="Code Party">
2656     <short><p>
2657      Have an assignment or project you need to work on? We
2658      will be coding from 7:00pm until 4:00am starting on Friday, July 17th
2659      in the Comfy lounge. Join us!
2660     </p></short>
2661 </eventitem>
2662
2663 <eventitem date="2009-07-07" time="3:00 PM" etime="5:00 PM" room="DC 1302"
2664            title="History of CS Curriculum at UW">
2665     <short><p>
2666      This talk provides a personal overview of the evolution of the
2667      undergraduate computer science curriculum at UW over the past forty
2668      years, concluding with an audience discussion of possible future
2669      developments.
2670     </p></short>
2671 </eventitem>
2672
2673 <eventitem date="2009-06-22" time="4:30 PM" etime="6:30 PM" room="MC 4041"
2674            title="Paper Club">
2675     <short><p> Come and drink tea and read an academic CS paper with
2676      the Paper Club.  We will be meeting from 4:30pm until 6:30pm on
2677      Monday, June 22th on the 4th floor of the MC (exact room number
2678      TBA).  See http://csclub.uwaterloo.ca/~paper
2679     </p></short>
2680 </eventitem>
2681
2682 <eventitem date="2009-06-19" time="5:30 PM" room="Dooly's" title="Dooly's Night">
2683     <short><p>
2684     The CSC will be playing pool at Dooly's. Join us for only a few dollars.
2685     </p></short>
2686 </eventitem>
2687
2688 <eventitem date="2009-06-05" time="7:00 PM" edate="2009-06-06" etime="4:00 AM"
2689            room="MC 3001" title="Code Party">
2690     <short><p>
2691      Have an assignment or project you need to work on? We
2692      will be coding from 7:00pm until 7:00am starting on Friday, June 5th
2693      in the Comfy lounge. Join us!
2694     </p></short>
2695 </eventitem>
2696
2697 <eventitem date="2009-06-02" time="4:30 PM" room="MC 2037" title="Unix 101">
2698     <short><p>
2699         Need to use the UNIX environment for a course, want to overcome your fears of
2700         the command line, or just curious? Come and learn the arcane secrets of the
2701         UNIX command line interface from CSC mages. After this tutorial you will be
2702         comfortable with the essentials of navigating, manipulating and viewing files,
2703         and processing data at the UNIX shell prompt.
2704     </p></short>
2705 </eventitem>
2706
2707 <eventitem date="2009-05-12" time="12:00 PM" room="MC 2034" title="PHP on Windows">
2708     <short><p>PHP Programming Contest Info Session</p></short>
2709     <abstract><p>
2710     Port or create a new PHP web application and you could win a prize
2711     of up to $10k. Microsoft is running a programming contest for PHP
2712     developers willing to support the Windows platform. The contest is
2713     ongoing; this will be a short introduction to it by
2714     representatives of Microsoft and an opportunity to ask questions.
2715     Pizza and pop will be provided.
2716     </p></abstract>
2717 </eventitem>
2718
2719
2720 <!-- Winter 2009 -->
2721 <eventitem date="2009-04-02" time="4:30 PM" room="DC1302" title="Rapid prototyping and mathematical art">
2722
2723     <short><p>A talk by Craig S. Kaplan.</p></short>
2724
2725
2726     <abstract><p>The combination of computer graphics, geometry, and rapid
2727 prototyping technology has created a wide range of exciting
2728 opportunities for using the computer as a medium for creative
2729 expression.  In this talk, I will describe the most popular
2730 technologies for computer-aided manufacturing, discuss
2731 applications of these devices in art and design, and survey
2732 the work of contemporary artists working in the area (with a
2733 focus on mathematical art).  The talk will be primarily
2734 non-technical, but I will mention some of the mathematical
2735 and computational techniques that come into play.
2736 </p></abstract>
2737
2738 </eventitem>
2739 <eventitem date="2009-04-03" time="6:00 PM" edate="2009-04-04"
2740            etime="6:00 AM" room="TBA" title="CTRL-D">
2741   <short>
2742     <p>
2743       Join the Club That Really Likes Dinner for the End Of Term
2744       party!  Inquire closer to the date for details.
2745     </p>
2746   </short>
2747   <abstract>
2748     <p>
2749       This is not an official club event and receives no funding.
2750       Bring food, drinks, deserts, etc.
2751     </p>
2752   </abstract>
2753 </eventitem>
2754
2755 <eventitem date="2009-03-27" time="6:00 PM" edate="2009-03-28"
2756            etime="12:00 PM" room="Comfy Lounge (MC)"
2757            title="Code Party">
2758   <short>
2759     <p>
2760       CSC Code Party!  Same as always - no sleep, lots of caffeine,
2761       and really nerdy entertainment.  Bonus:  Free Cake!
2762     </p>
2763   </short>
2764   <abstract>
2765     <p>
2766       This code party will have the usual, plus it will double as the
2767       closing of the programming contest.  Our experts will be
2768       available to help you polish off your submission.
2769     </p>
2770   </abstract>
2771 </eventitem>
2772
2773 <eventitem date="2009-03-19" time="4:30 PM" edate="2009-03-28"
2774            etime="12:00 PM" room="MC2061"
2775            title="Artificial Intelligence Contest">
2776     <short>
2777       <p>
2778         Come out and try your hand at writing a computer program that
2779         plays Minesweeper Flags, a two-player variant of the classic
2780         computer game, Minesweeper.  Once you're done, your program
2781         will compete head-to-head against the other entries in a
2782         fierce Minesweeper Flags tournament.  There will be a contest
2783         kick-off session on Thursday March 19 at 4:30 PM in room
2784         MC3036.  Submissions will be accepted until Saturday March 28.
2785       </p>
2786     </short>
2787     <abstract>
2788       <p>
2789         Come out and try your hand at writing a computer program that
2790         plays Minesweeper Flags, a two-player variant of the classic
2791         computer game, Minesweeper.  Once you're done, your program
2792         will compete head-to-head against the other entries in a
2793         fierce Minesweeper Flags tournament.  There will be a contest
2794         kick-off session on Thursday March 19 at 4:30 PM in room
2795         MC3036.  Submissions will be accepted until Saturday March 28.
2796       </p>
2797     </abstract>
2798 </eventitem>
2799
2800 <eventitem date="2009-03-05" time="4:30 PM" edate="2009-03-05"
2801            etime="6:30 PM" room="Comfy Lounge"
2802            title="SIGGRAPH Night">
2803   <short>
2804     <p>
2805       Come out and watch the SIGGRAPH (Special Interest Group on
2806       Graphics) conference video review.  A video of insane, amazing,
2807       and mind blowing computer graphics. .
2808     </p>
2809   </short>
2810   <abstract>
2811     <p>
2812       The ACM SIGGRAPH (Special Interest Group on Graphics) hosts a
2813       conference yearly in which the latest and greatest in computer
2814       graphics premier. They record video and as a result produce a
2815       very nice Video Review of the conference. Come join us watching
2816       these videos, as well as a few professors from the UW Computer
2817       Graphics Lab. There will be some kind of food and drink, and its
2818       guranteed to be dazzling.
2819     </p>
2820   </abstract>
2821 </eventitem>
2822
2823 <eventitem date="2009-03-12" time="8:00 AM" edate="2009-03-13"
2824            etime="9:00 PM" room="Toronto Hilton"
2825            title="Canadian Undergraduate Technology Conference">
2826   <short>
2827     <p>
2828       See <a href="http://www.cutc.ca">cutc.ca</a> for more details.
2829     </p>
2830   </short>
2831   <abstract>
2832     <p>
2833       The Canadian Undergraduate Technology Conference is Canada's
2834       largest student-run conference. From humble roots it has emerged
2835       as a venue that offers an environment for students to grow
2836       socially, academically, and professionally. We target to exceed
2837       our past record of 600 students from 47 respected institutions
2838       nationwide. The event mingles ambitious as well as talented
2839       students with leaders from academia and industry to offer
2840       memorable experiences and valuable opportunities.
2841     </p>
2842   </abstract>
2843 </eventitem>
2844
2845 <eventitem date="2009-03-09" time="3:00 PM" room="DC1302"
2846            title="Prabhakar Ragde">
2847     <short><p>
2848     Functional Lexing and Parsing</p></short>
2849     <abstract>
2850       <p>
2851         This talk will describe a non-traditional functional approach
2852         to the classical problems of lexing (breaking a stream of
2853         characters into "words" or tokens) and parsing (identifying
2854         tree structure in a stream of tokens based on a grammar,
2855         e.g. for a programming language that needs to be compiled or
2856         interpreted). The functional approach can clarify and organize
2857         a number of algorithms that tend to be opaque in their
2858         conventional imperative presentation. No prior background in
2859         functional programming, lexing, or parsing is assumed.
2860       </p>
2861     </abstract>
2862 </eventitem>
2863
2864 <eventitem date="2009-03-12" time="5:00 PM" etime="7:00 PM" room="RAC2009"
2865            title="IQC - Programming Quantum Computers">
2866     <short>
2867       <p>
2868         A brief intro to Quantum Computing and why it matters,
2869         followed by a talk on programming quantum computers.  Meet at
2870         the CSC at 4:00PM for a guided walk to the RAC.
2871       </p>
2872     </short>
2873     <abstract>
2874       <p>
2875         Raymond Laflamme is the director of the Institute for Quantum
2876         Computing at the University of Waterloo and holds the Canada
2877         Research Chair in Quantum Information.  He will give a brief
2878         introduction to quantum computing and why it matters, followed
2879         by a talk on programming quantum computers.  There will be
2880         tours of the IQC labs at the end, and pizza will be provided
2881         back at the CSC for all attendees.
2882       </p>
2883     </abstract>
2884 </eventitem>
2885
2886 <eventitem date="2009-02-27" time="5:00 PM" etime="7:00 PM" room="CSC Office: MC3036" title="Dooly's Night">
2887     <short><p>
2888     Come join the CSC as we head to Dooly's.</p></short>
2889     <abstract><p>
2890     Meet us at the Club office as we head to Dooly's for cheap tables and good times.</p></abstract>
2891 </eventitem>
2892
2893 <eventitem date="2009-02-05" time="5:30 PM" room="MC2062 and MC2063" title="UNIX 101 and 102">
2894     <short><p>
2895     Continuing the popular Unix Tutorials with a rerun of 101 and the debut of 102.</p></short>
2896     <abstract><p>
2897     Unix 101 is an introduction to the Unix shell environment, both on the student
2898     servers and on other Unix environments. Topics covered include: using the shell, both basic
2899     interaction and advanced topics like scripting and job control, the filesystem and manipulating
2900     it, and ssh. </p><p>
2901     Unix 102 is a follow up to Unix 101, requiring basic knowledge of the shell.
2902     If you missed Unix101 but still know your way around you should be fine.
2903     Topics covered include: "real" editors, document typesetting with LaTeX
2904     (great for assignments!), bulk editing, spellchecking, and printing in the
2905     student environment and elsewhere. </p><p>
2906     If you aren't interested or feel comfortable with these taskes, watch out for
2907     Unix 103 and 104 to get more depth in power programming tools on Unix. </p></abstract>
2908 </eventitem>
2909
2910
2911 <eventitem date="2009-02-03" time="5:30 PM" room="MC3003" title="UNIX 101">
2912     <short><p> New to Unix? No problem, we'll teach you to power use circles around your friends!</p></short>
2913     <abstract><p>This first tutorial is an introduction to the Unix shell environment, both on the student
2914         servers and on other Unix environments. Topics covered include: using the shell, both basic
2915         interaction and advanced topics like scripting and job control, the filesystem and manipulating
2916         it, and ssh. If you feel you're already familiar with these topics don't hesitate to come
2917         to Unix 102 to learn about documents, editing, and other related tasks, or watch out
2918         for Unix 103 and 104 that get much more in depth into power programming tools on Unix.</p></abstract>
2919 </eventitem>
2920
2921 <eventitem date="2009-02-06" time="7:00 PM" room="Comfy Lounge" title="Code Party!">
2922   <short>
2923     <p>
2924       There is a CSC Code Party starting at 7:00PM (19:00).  Come out
2925       and enjoy some good old programming and meet others interested
2926       in writing code!  Free energy drinks and snacks for all.  Plus,
2927       we have lots of things that need to be done if you're looking
2928       for a project to work on!
2929     </p>
2930   </short>
2931   <abstract>
2932     <p>
2933       Code Party.  Awesome.  Need we say more?
2934     </p>
2935   </abstract>
2936 </eventitem>
2937
2938 <eventitem date="2009-01-16" time="7:30 PM" room="Comfy Lounge" title="Code party !!11!!1!!">
2939
2940     <short><p>There is a CSC Code Party Tonight starting at 7:30PM
2941     (1930) until we get bored (likely in the early in morning). Come
2942     out for fun hacking times, spreading Intertube memes (optional),
2943     hacking on the OpenMoko, creating music mixes, and other general
2944     classyness. If we manage to swing it, there will be delicious
2945     energy drinks for your consumption! Alternatively, if we don't we
2946     will have each other as well as some delicious tea and
2947     coffee. Perhaps a crumpet
2948 </p></short>
2949
2950
2951     <abstract><p>There is a CSC Code Party Tonight starting at 7:30PM
2952         (1930) until we get bored (likely in the early in
2953         morning). Come out for fun hacking times, spreading Intertube
2954         memes (optional), hacking on the OpenMoko, creating music
2955         mixes, and other general classyness. If we manage to swing it,
2956         there will be delicious energy drinks for your consumption!
2957         Alternatively, if we don't we will have each other as well as
2958         some delicious tea and coffee. Perhaps a crumpet
2959 </p></abstract>
2960
2961 </eventitem>
2962
2963 <eventitem date="2009-01-29" time="6:30 PM" room="Modern Languages Theatre" title="Richard M. Stallman">
2964   <short><p> The Free Software Movement and the GNU/Linux Operating System </p>
2965   </short>
2966   <abstract>
2967   <p>
2968   Richard Stallman will speak about the Free Software Movement, which
2969   campaigns for freedom so that computer users can cooperate to
2970   control their own computing activities. The Free Software Movement
2971   developed the GNU operating system, often erroneously referred to as
2972   Linux, specifically to establish these freedoms.</p>
2973   <p><b>About Richard Stallman:</b>
2974   Richard Stallman launched the development of the GNU operating system (see
2975   <a href="http://www.gnu.org">www.gnu.org</a>) in 1984. GNU is free
2976   software: everyone has the freedom to copy it and redistribute it,
2977   as well as to make changes either large or small. The GNU/Linux
2978   system, basically the GNU operating system with Linux added, is used
2979   on tens of millions of computers today. Stallman has received the
2980   ACM Grace Hopper Award, a MacArthur Foundation fellowship, the
2981   Electronic Frontier Foundation's Pioneer award, and the the Takeda
2982   Award for Social/Economic Betterment, as well as several honorary
2983   doctorates.</p>
2984   </abstract>
2985 </eventitem>
2986
2987 <eventitem date="2009-01-22" time="12:00 PM" room="MC5136" title="Joel Spolsky">
2988   <short><p> Joel Spolsky, of <a href="http://www.joelonsoftware.com">Joel on Software</a> will be giving a talk entitled "Computer Science Education and the Software Industry".</p>
2989   </short>
2990   <abstract><p><b>About Joel Spolsky:</b> Joel Spolsky is a
2991   globally-recognized expert on the software development process. His
2992   website <em>Joel on Software</em>
2993   (<a href="http://www.joelonsoftware.com/">www.joelonsoftware.com</a>)
2994   is popular with software developers around the world and has been
2995   translated into over thirty languages. As the founder
2996   of <a href="http://www.fogcreek.com/">Fog Creek Software</a> in New
2997   York City, he
2998   created <a href="http://www.fogcreek.com/FogBugz">FogBugz</a>, a
2999   popular project management system for software teams. He is the
3000   co-creator of <a href="http://stackoverflow.com/">Stack
3001   Overflow</a>, a programmer Q&amp;A site. Joel has worked at
3002   Microsoft, where he designed VBA as a member of the Excel team, and
3003   at Juno Online Services, developing an Internet client used by
3004   millions. He has
3005   written <a href="http://www.joelonsoftware.com/BuytheBooks.html">four
3006   books</a>: <em>User Interface Design for Programmers</em> (Apress,
3007   2001), <em>Joel on Software</em> (Apress, 2004), <em>More Joel on
3008   Software </em>(Apress, 2008), and <em>Smart and Gets Things Done:
3009   Joel Spolsky's Concise Guide to Finding the Best Technical
3010   Talent </em>(Apress, 2007). He also writes a monthly column
3011   for<strong> </strong><em><a href="http://www.inc.com/">Inc
3012   Magazine</a>. </em>Joel holds a BS from Yale in Computer
3013   Science. Before college he served in the Israeli Defense Forces as a
3014   paratrooper, and he was one of the founders of Kibbutz Hanaton.</p>
3015  </abstract>
3016 </eventitem>
3017
3018 <eventitem date="2009-01-13" time="4:20 PM" room="Comfy Lounge" title="Term Elections">
3019   <short><p>Winter Elections</p>
3020   </short>
3021 </eventitem>
3022
3023 <!-- Fall 2008 -->
3024 <eventitem date="2008-11-15" time="6:30 AM" room="Toronto" title="Changing the World Conference">
3025
3026     <short><p>Organized by Queen's students, Changing the World aims to bring together the world's greatest visionaries to inspire people to innovate and better our world.  Among these speakers include Nobel Peace Prize winner, Eric Chivian. He was a recipient for his work on stopping nuclear war.
3027 </p></short>
3028
3029
3030     <abstract><p>Organized by Queen's students, Changing the World
3031         aims to bring together the world's greatest visionaries to
3032         inspire people to innovate and better our world.  Among these
3033         speakers include Nobel Peace Prize winner, Eric Chivian.  He
3034         was a recipient for his work on stopping nuclear war.
3035       </p><p>The conference is modeled after TED (Technology,
3036         Entertainment, Design), an annual conference uniting the
3037         world's most fascinating thinkers and doers, and like TED,
3038         each speaker is given 18 minutes to give the talk of their
3039         lives.
3040       </p><p>Specifically for students in CS/Math, 50 tickets have
3041         been reserved (non-students: $500).  For those who would like
3042         to attend, please pick up your ticket in the Computer Science
3043         Club office.  The tickets are limited and they are first come
3044         first serve.
3045 </p></abstract>
3046
3047 </eventitem>
3048
3049 <eventitem date="2008-11-06" time="10:00 AM" room="SLC Multipurpose Room" title="Linux Install Fest">
3050
3051     <short><p>Come join the CSC in celebrating the new releases of
3052     Ubuntu Linux, Free BSD and Open BSD, and get a hand installing one
3053     of them on your own system.
3054 </p></short>
3055
3056
3057     <abstract><p>Come join the CSC in celebrating the new releases of
3058         Ubuntu Linux, Free BSD and Open BSD, and get a hand installing
3059         one of them on your own system.
3060       </p><p>This is an event to celebrate the releases of new
3061         versions of Ubuntu Linux, OpenBSD, and FreeBSD. CDs will be
3062         available and everyone is invited to bring their PC or laptop
3063         to get help installing any of these Free operating
3064         systems. Knowledgeable CSC members will be available to help
3065         with any installation troubles, or to troubleshooting any
3066         existing problems that users may have.
3067       </p><p>This event will also promote gaming on Linux, as well as
3068         FLOSS (Free/Libre and Open Source Software) in general. We may
3069         also have a special guest (Ian Darwin, of OpenBSD and OpenMoko
3070         fame).
3071 </p></abstract>
3072 </eventitem>
3073
3074 <eventitem date="2008-11-10" time="4:30 PM" room="MC4061" title="Functional Programming">
3075
3076     <short><p>This talk will survey concepts, techniques, and
3077     languages for functional programming from both historical and
3078     contemporary perspectives, with reference to Lisp, Scheme, ML,
3079     Haskell, and Erlang. No prior background is assumed.
3080 </p></short>
3081
3082
3083     <abstract><p>This talk will survey concepts, techniques, and
3084         languages for functional programming from both historical and
3085         contemporary perspectives, with reference to Lisp, Scheme, ML,
3086 Haskell, and Erlang. No prior background is assumed.
3087 </p></abstract>
3088
3089 </eventitem>
3090
3091 <eventitem date="2008-10-24" time="6:00 PM" room="Comfy Lounge" title="Code Party">
3092   <abstract><p>
3093     Come join us for a night of coding. Get in touch with more experianced coders,
3094     advertize for/bug squash on your favourite open source project, write that personal
3095     project you were planning to do for a while but haven't found the time. Don't
3096     have any ideas but want to sit and hack? We can find something for you to do.
3097   </p></abstract>
3098   <short><p>
3099     A fevered night of code, friends, fun, free energy drinks, and the CSC.
3100   </p></short>
3101 </eventitem>
3102
3103 <eventitem date="2008-10-16" time="4:30 PM" room="Comfy Lounge" title="SIGGRAPH Night">
3104   <short><p>
3105     Come out and watch the SIGGRAPH (Special Interest Group on Graphics) conference video
3106     review. A video of insane, amazing, and mind blowing computer graphics.
3107   </p></short>
3108   <abstract><p>
3109     The ACM SIGGRAPH (Special Interest Group on Graphics) hosts a conference yearly
3110     in which the latest and greatest in computer graphics premier. They record video
3111     and as a result produce a very nice Video Review of the conference. Come join us
3112     watching these videos, as well as a few professors from the UW Computer Graphics
3113     Lab. There will be some kind of food and drink, and its guranteed to be dazzling.
3114   </p></abstract>
3115 </eventitem>
3116
3117 <eventitem date="2008-09-12" time="4:30 PM" room="Comfy Lounge" title="Meet the CSC">
3118   <short><p>
3119     Come out and meet other CSC members, find out about the CSC, meet the executive
3120     nominees, and join if you like what you see. Nominees should plan on attending.
3121   </p></short>
3122 </eventitem>
3123
3124 <eventitem date="2008-09-16" time="4:30 PM" room="Comfy Lounge" title="CSClub Elections">
3125   <short><p>
3126     Elections are scheduled for Tues, Sep 16 @ 4:30 pm in the comfy lounge.
3127     The nomination period closes on Mon, Sep 15 @ 4:30 pm. Nominations may be
3128     sent to cro@csclub.uwaterloo.ca. Candidates should not engage in
3129     campaigning after the nomination period has closed.
3130   </p></short>
3131 </eventitem>
3132
3133 <eventitem date="2008-09-25" time="4:30 PM" room="MC2037" title="Unix 101">
3134   <short><p>
3135     New to Unix? No problem, we'll teach you to power use circles around your friends!
3136   </p></short>
3137   <abstract><p>
3138     This first tutorial is an introduction to the Unix shell environment, both on the student
3139     servers and on other Unix environments. Topics covered include: using the shell, both basic
3140     interaction and advanced topics like scripting and job control, the filesystem and manipulating
3141     it, and ssh. If you feel you're already familiar with these topics don't hesitate to come
3142     to Unix 102 to learn about documents, editing, and other related tasks, or watch out
3143     for Unix 103 and 104 that get much more in depth into power programming tools on Unix.
3144   </p></abstract>
3145 </eventitem>
3146
3147 <eventitem date="2008-10-07" time="4:30 PM" room="MC2037" title="Unix 101">
3148   <short><p>
3149     New to Unix? No problem, we'll teach you to power use circles around your friends!
3150   </p></short>
3151   <abstract><p>
3152     This first tutorial is an introduction to the Unix shell environment, both on the student
3153     servers and on other Unix environments. Topics covered include: using the shell, both basic
3154     interaction and advanced topics like scripting and job control, the filesystem and manipulating
3155     it, and ssh. If you feel you're already familiar with these topics don't hesitate to come
3156     to Unix 102 to learn about documents, editing, and other related tasks, or watch out
3157     for Unix 103 and 104 that get much more in depth into power programming tools on Unix.
3158   </p></abstract>
3159 </eventitem>
3160
3161 <eventitem date="2008-10-09" time="4:30 PM" room="MC2037" title="Unix 102">
3162   <short><p>
3163     Want more from Unix? No problem, we'll teach you to create and quickly edit high quality documents.
3164   </p></short>
3165   <abstract><p>
3166     This is a follow up to Unix 101, requiring basic knowledge of the shell. If you missed
3167     Unix101 but still know your way around you should be fine. Topics covered include: "real" editors,
3168     document typesetting with LaTeX (great for assignments!), bulk editing, spellchecking, and printing
3169     in the student environment and elsewhere. If you aren't interested or feel comfortable with these
3170     taskes, watch out for Unix 103 and 104 to get more depth in power programming tools on Unix. If you
3171     don't think you're ready go to Unix 101 on Tuesday to get familiarized with the shell environment.
3172   </p></abstract>
3173 </eventitem>
3174
3175 <eventitem date="2008-10-03" time="4:30 PM" room="MC2065" title="Game Sketching">
3176   <short><p>Juancho Buchanan, CTO Relic Entertainment</p></short>
3177   <abstract><p>
3178       In this talk I will give an overview of the history of Relic and our
3179       development philosophy.  The Talk will then proceed to talk about work
3180       that is being pursued in the area of early game prototyping with the
3181       introduction of game sketching methodology.
3182     </p>
3183     <p>
3184       Bio:
3185
3186       Fired from his first job for playing Video Games Juancho Buchanan is
3187       currently the director of Technology for Relic Entertainment.  Juancho
3188       Buchanan Wrote his first game in 1984 but then pursued other interests
3189       which included a master's in Program Visualization, A Doctorate in
3190       Computer Graphics, a stint as a professor at the University of Alberta
3191       where he pioneered early work in Non photo realistic rendering, A stint
3192       at Electronic Arts as Director, Advanced Technology, A stint at EA as
3193       the University Liaison Dude, A stint at Carnegie Mellon University where
3194       he researched the Game Sketching idea.  His current role at Relic has
3195       him working with the soon to be released Dawn of War II.
3196   </p></abstract>
3197 </eventitem>
3198
3199
3200 <eventitem date="2008-10-02" time="4:30 PM" room="MC4021" title="General Meeting 2">
3201   <short><p>
3202     The second official general meeting of the term. Items on the adgenda are CSC Merch,
3203     upcoming talks, and other possible planned events, as well as the announcement of
3204     a librarian and planning of an office cleanout and a library organization day.
3205   </p></short>
3206 </eventitem>
3207
3208 <!-- Spring 2008 -->
3209
3210 <!-- Winter 2008 -->
3211
3212 <eventitem date="2008-02-08" time="4:30 PM" room="MC4042" title="A Brief History of Blackberry and the Wireless Data Telecom Industry">
3213   <short>Tyler Lessard</short>
3214   <abstract><p>
3215 Tyler Lessard from RIM will present a brief history of BlackBerry
3216 technology and will discuss how the evolution of BlackBerry as an
3217 end-to-end hardware, software and services platform has been
3218 instrumental to its success and growth in the market.  Find out how the
3219 BlackBerry service components integrate with wireless carrier networks
3220 and get a sneak peek at where the wireless data market is going.
3221   </p></abstract>
3222 </eventitem>
3223
3224 <eventitem date="2008-02-29" time="5:00 PM" room="BFG2125" title="Quantum Information Processing">
3225   <short>Raymond Laflamme</short>
3226   <abstract><p>
3227       Information processing devices are pervasive in our society; from the 5
3228       dollar watches to multi-billions satellite network.  These devices have
3229       allowed the information revolution which is developing around us. It has
3230       transformed not only the way we communicate or entertain ourselves but
3231       also the way we do science and even the way we think. All this
3232       information is manipulated using the classical approximation to the laws
3233       of physics, but we know that there is a better approximation: the
3234       quantum mechanical laws.  Would using quantum mechanics for information
3235       processing be an impediment or could  it be an advantage?  This is the
3236       fundamental question at the heart of quantum information processing
3237       (QIP). QIP is a young field with an incredible potential impact reaching
3238       from the way we understand fundamental physics to technological
3239       applications. I will give an overview of the Institute for Quantum
3240       Computing,  comment on the effort in this field at Waterloo and in
3241       Canada and, time permitted visit some of the IQC labs.
3242   </p></abstract>
3243 </eventitem>
3244
3245 <eventitem date="2008-02-14" time="4:00PM" room="MC2061" title="CSC Programming Contest 1">
3246   <short>Yes, we know this is Valentine's Day.</short>
3247   <abstract><p>
3248       Contestants will be writing an artificial intelligence to play Risk.  The
3249       prize will be awarded to the intelligence which wins the most
3250       head-to-head matches against competing entries.  We're providing easy
3251       APIs for several languages, as well as full documentation of the game
3252       protocol so contestants can write wrappers for any additional language
3253       they wish to work in.
3254     </p>
3255     <p>
3256       We officially support entries in Scheme, Perl, Java, C, and C++.  If you
3257       would like help developing an API for some other language contact us
3258       through the systems committee mailing list (we will require that your API
3259       is made available to all entrants).
3260     </p>
3261     <p>
3262       To kick off the contest we're hosting an in-house coding session starting
3263       at 4:00PM on Thursday, February 14th in MC2061.  Members of our contest
3264       administration team will be available to help you work out the details of
3265       our APIs, answer questions, and provide the necessities of life (ie,
3266       pizza).  Submissions will open no later than 5:00PM on February 14th
3267       and will close no earlier than 12:00PM on February 17th.
3268     </p>
3269     <p>
3270       Visit our contest site <a href="http://csclub.uwaterloo.ca/contest/"> here!</a>
3271   </p></abstract>
3272 </eventitem>
3273
3274
3275 <eventitem date="2008-01-23" time="5:00 PM" room="MC 4020" title="Creating Distributed Applications with TIPC">
3276   <short>Elmer Horvath</short>
3277   <abstract><p>
3278       The problem:  coordinating and communicating between multiple processors
3279       in a distributed system (possibly containing heterogeneous elements)
3280       </p><p>
3281       The open source TIPC (transparent interprocess communication) protocol
3282       has been incorporated into the Linux kernel and is available in VxWorks
3283       and, soon, other OSes.  This emerging protocol has a number of
3284       advantages in a clustered environment to simplify application
3285       development while maintaining a familiar socket programming interface.
3286       The service oriented capabilities of TIPC help in applications easily
3287       finding required services in a system.  The location transparent aspect
3288       of TIPC allows services to be located anywhere in the system as well as
3289       allowing redundant services for both load reduction and backup.
3290
3291       Learn about the emerging cluster protocol.
3292   </p></abstract>
3293 </eventitem>
3294
3295 <eventitem date="2008-01-15" time="4:30 PM" room="Comfy Lounge" title="CSClub Elections">
3296   <short><p>
3297     Elections are scheduled for Tues, Jan 15 @ 4:30 pm in the comfy lounge.
3298     The nomination period closes on Mon, Jan 14 @ 4:30 pm. Candidates should
3299     not engage in campaigning after the nomination period has closed.
3300   </p></short>
3301 </eventitem>
3302
3303
3304 <!-- fall 2007 -->
3305
3306         <eventitem date="2007-10-19" time="5:00 PM" room="MC4058" title="General Meeting">
3307         <short>
3308         <p>
3309         There is a general meeting scheduled for Friday, October 19, 2007 at 17:00.
3310         </p>
3311         <p>
3312         This is a chance to bring out any ideas and concerns about CSC happenings into the open, as well as a chance to make sure all CSC staff is up to speed on current CSC doings. The current agenda can be found at <a href="http://wiki.csclub.uwaterloo.ca/wiki/Friday_19_October_2007">http://wiki.csclub.uwaterloo.ca/wiki/Friday_19_October_2007.</a>
3313         </p>
3314         </short>
3315         </eventitem>
3316
3317         <eventitem date="2007-09-25" time="1:30 PM" room="DC 1302" title="Virtual Reality, Real Law: The regulation of Property in Video Games">
3318          <short>Susan Abramovitch</short>
3319          <abstract>
3320         <p>
3321         This talk is run by the School of Computer Science
3322         </p>
3323         <p>
3324         How should virtual property created in games, such as weapons used in
3325 games like Mir 3 and real estate or clothing created or acquired in
3326 games like Second Life, be treated in law.  Although the videogaming
3327 industry continues to multiply in value, virtual property created in
3328 virtual worlds has not been formally recognized by any North American
3329 court or legislature.  A bridge has been taking shape from gaming's
3330 virtual economies to real world economies, for example, through
3331 unauthorized copying of designer clothes sold on Second Life for in-game
3332 cash, or real court damages awarded against deletion of player-earned
3333 swords in Mir 3.  The trading of virtual property is important to a
3334 large number of people and property rights in virtual property are
3335 currently being recognized by some foreign legal bodies.
3336 </p>
3337 <p>
3338 Susan Abramovitch will explain the legal considerations in determining
3339 how virtual property can or should be governed, and ways it can be
3340 legally similar to tangible property.  Virtual property can carry both
3341 physical and intellectual property rights.  Typically video game
3342 developers retain these rights via online agreements, but Ms.
3343 Abramovitch questions whether these rights are ultimately enforceable
3344 and will describe policy issues that may impact law makers in deciding
3345 how to treat virtual property under such agreements.
3346 </p>
3347          </abstract>
3348         </eventitem>
3349
3350         <eventitem date="2007-10-02" time="4:30 PM" room="MC4061" title="Putting the fun into Functional Languages and Useful Programming with OCaml/F#">
3351          <short>Brennan Taylor</short>
3352          <abstract>
3353         <p>A lecture on why functional languages are important, practical applications, and some neat examples. Starting with an introduction to
3354 basic functional programming with ML syntax, continuing with the strengths of OCaml and F#, followed by some exciting examples. Examples include GUI
3355 programming with F#, Web Crawlers with F#, and OpenGL/GTK programming with OCaml. This lecture aims to display how powerful functional languages can
3356 be.</p>
3357          </abstract>
3358         </eventitem>
3359         <eventitem date="2007-10-09" time="4:45 PM" room="MC 4060" title="Join-Calculus with JoCaml. Concurrent programming that doesn't fry your brain">
3360          <short>Brennan Taylor</short>
3361          <abstract>
3362         <p>
3363         A lecture on the fundamentals of Pi-Calculus followed by an introduction
3364 to Join-Calculus in JoCaml with some great examples. Various concurrent
3365 control structures are explored, as well as the current limitations of
3366 JoCaml. The examples section will mostly be concurrent programming,
3367 however some basic distributed examples will be explored. This lecture
3368 focuses on how easy concurrent programming can be.
3369         </p>
3370          </abstract>
3371         </eventitem>
3372
3373         <eventitem date="2007-10-15" time="4:30 PM" room="MC4041" title="Off-the-Record Messaging: Useful Security and Privacy for IM">
3374          <short>Ian Goldberg</short>
3375          <abstract>