Added FOAM talk to events.xml
[www/www.git] / events.xml
1 <?xml version='1.0'?>
2
3 <!DOCTYPE eventdefs SYSTEM "csc.dtd" [<!ENTITY mdash "&#x2014;">]>
4 <eventdefs>
5
6 <!-- Fall 2015 -->
7
8 <eventitem date="2015-11-26" time="5:00-7:00 PM" room="MC 4063"
9            title="An Introduction to the FOAM Framework">
10   <short>
11     <p>
12       An introduction to the FOAM framework, an open-source modeling framework written in Javascript.
13     </p>
14   </short>
15   <abstract>
16     <p>
17       FOAM is an open-source modeling framework written in Javascript. With FOAM,
18       you can create Domain Specific Languages (DSLs), which are high-level
19       models that can be interpreted or compiled to different languages or
20       environments (Java/Android, Swift/iOS, and JS/Web). Currently, it supports
21       DSLs for entities/classes, parsers, animations, database queries,
22       interactive documents, and, most importantly, new DSLs.
23     </p>
24     <p>
25       FOAM supports building text, HTML, and graphical views for DSLs using a
26       small Model View Controller (MVC) library, which is itself modeled with
27       FOAM. This library can also be used by modeled Javascript applications.
28     </p>
29     <p>
30       FOAM increases developer productivity by allowing them to express
31       solutions at a higher, more succinct level. The MVC library also
32       increases application performance through its efficient data-binding,
33       caching, and query-optimization mechanisms.
34     </p>
35     <p>
36       Learn more at http://foamdev.com
37     </p>
38   </abstract>
39 </eventitem>
40
41 <eventitem date="2015-11-23" time="6:00 PM" room="MC 4041"
42            title="'Static Analysis and Program Optimization Using Dataflow Analysis'">
43   <short>
44     <p>
45       An introduction to some basic issues with optimization of imperative programs, by Sean Harrap
46     </p>
47   </short>
48   <abstract>
49     <p>
50       An introduction to some basic issues with optimization of imperative programs by Sean Harrap, beginning with traditional methods such as tree traversals.
51     </p>
52     <p>
53       This will be followed by a more powerful solution to these problems, providing an overview of its mathematical foundations,
54       and then describing how it can be used to express optimizations simply and elegantly.
55     </p>
56     <p>
57       Some familiarity with the second year CS core (CS245, CS241, MATH239) will be assumed.
58     </p>
59   </abstract>
60 </eventitem>
61
62 <eventitem date="2015-11-19" time="7:00-8:00 PM" room="MC 4020"
63            title="'Git 101'">
64   <short>
65     <p>
66       Learn how to use Git properly in an exciting talk by Charlie Wang!
67     </p>
68   </short>
69   <abstract>
70     <p>
71       git init, git add, git commit, git 'er done!
72     </p>
73     <p>
74       In Git 101, Charlie Wang will convince you to use Git for your projects and
75       show you a high level overview of how to use it properly.
76     </p>
77     <p>
78       This talk is recommended for CS 246 students.
79     </p>
80     <p>
81       Come for the tutorial, stay for the bad jokes.
82     </p>
83   </abstract>
84 </eventitem>
85
86 <eventitem date="2015-10-16" time="7:00 PM" room="ML Theatre of the Arts"
87            title="Cory Doctorow - The War on General Purpose Computing">
88   <short>
89     Between walled gardens, surveillance agencies, and political opponents,
90     no matter who's winning the war on general purpose computing you're
91     losing. The Computer Science Club will be hosting Cory Doctorow's talk
92     in the Theatre of the Arts on October 16.
93   </short>
94   <abstract>
95     <p>
96       No Matter Who's Winning the  War on General Purpose Computing, You're Losing
97     </p>
98     <p>
99       If cyberwar were a hockey game, it'd be the end of the first period and
100       the score would be tied 500-500. All offense, no defense.
101     </p>
102     <p>
103       Meanwhile, a horrible convergence has occurred as everyone from car
104       manufacturers to insulin pump makers have adopted the inkjet printer
105       business model, insisting that only their authorized partners can make
106       consumables, software and replacement parts -- with the side-effect of
107       making it a felony to report showstopper, potentially fatal bugs in
108       technology that we live and die by.
109     </p>
110     <p>
111       And then there's the FBI and the UK's David Cameron, who've joined in
112       with the NSA and GCHQ in insisting that everyone must be vulnerable to
113       Chinese spies and identity thieves and pervert voyeurs so that the spy
114       agencies will always be able to spy on everyone and everything, everywhere.
115     </p>
116     <p>
117       It's been fifteen years since the copyright wars kicked off, and we're
118       still treating the Internet as a glorified video-on-demand service --
119       when we're not treating it as a more perfect pornography distribution
120       system, or a jihadi recruitment tool.
121     </p>
122     <p>
123       It's all of those -- and more. Because it's the nervous system of the
124       21st century. We've got to stop treating it like a political football.
125     </p>
126     <p>
127       Cory Doctorow will be talking on Friday October 16, 7pm in
128       the Theatre of the Arts. Admission is free, and
129       the talk will be open to the public. Doors open
130       at 6:30pm. Headsets will be provided for the hard of hearing,
131       email Patrick at pj2melan@uwaterloo.ca . The theatre is wheelchair accessible.
132     </p>
133     <p>
134       The following books written by Cory will be sold at the event:
135       <ul>
136         <li>Little Brother</li>
137         <li>Homeland</li>
138         <li>For the Win</li>
139         <li>Makers</li>
140         <li>Pirate Cinema</li>
141         <li>Information Doesn't want to be free</li>
142         <li>In Real Life</li>
143       </ul>
144     </p>
145   </abstract>
146 </eventitem>
147
148 <eventitem date="2015-10-07" time="5:30 PM" room="MC 4061"
149     title="Starting an VN Indie Game Company as a UW Student">
150   <short>
151
152     <p>Come out to a talk by Alfe Clemencio!</p>
153     <p> Many people want to make games as signified by all the game development
154         schools that are appearing everywhere. But how would you do it as a UW
155         student? This talk shares the experiences of how making Sakura River
156         Interactive was founded without any Angel/VC investment.
157     </p>
158   </short>
159   <abstract>
160     <p>Come out to a talk by Alfe Clemencio!</p>
161     <p> Many people want to make games as signified by all the game development
162         schools that are appearing everywhere. But how would you do it as a UW
163         student? This talk shares the experiences of how making Sakura River
164         Interactive was founded without any Angel/VC investment.
165     </p>
166     <p> The talk will start off with inspiration drawn of Co-op Japan, to it's
167         beginnings at Velocity. Then a reflection of how various game
168         development and business skills was obtained in the unexpected ways at
169         UW will follow. How the application of probabilities, theory of
170         computation, physical/psychological attraction theories was used in the
171         development of the company's first game. Finally how various Computer
172         Science theories helped evaluate feasibility of several potential
173         incoming business deals.
174     </p>
175     <a href="http://www.sakurariver.ca/">From Sakura River interactive</a>
176   </abstract>
177 </eventitem>
178
179 <eventitem date="2015-10-02" time="7:30 PM" room="MC 4040"
180            title="'Why Am I Studying This?'">
181   <short>
182     <p>
183       Big-O, the Halting Problem, Finite State Machines, and more are concepts that get
184       even more interesting in the real world. Come and hear Tom Rathborne talk about how theory
185       hits reality (often with a bang!) at Booking.com.
186     </p>
187   </short>
188   <abstract>
189     <ul>
190       <li>Data Structures</li>
191       <li>Finite State Machines</li>
192       <li>big-O</li>
193       <li>Queuing theory</li>
194       <li>Race conditions</li>
195       <li>Compilers</li>
196       <li>The Halting Problem</li>
197       <li>etc.</li>
198     </ul>
199     <p>
200       These things get even more interesting in the real world.
201       Come and hear Tom Rathborne talk about how theory hits reality (often with a bang!) at
202       Booking.com, the biggest not-a-technology-company on the Internet.
203     </p>
204     <p>
205       Food and drinks will be provided!
206     </p>
207   </abstract>
208 </eventitem>
209
210 <eventitem date="2015-09-30" time="5:00 PM" room="DC 1304"
211            title="Back to Back Talks: Culture Turnaround and Software Defined Networks">
212   <short>
213     <p>
214       Back to back talks from John Stix and Francisco Dominguez on turning
215       a company's culture around and on Software Defined Networks!
216     </p>
217   </short>
218   <abstract>
219     <p>
220       Back to back talks from John Stix and Francisco Dominguez on turning
221       a company's culture around and on Software Defined Networks!
222     </p>
223     <p>
224       John Stix will be talking about how he turned around the corporate culture at Fibernetics Corporation.
225     </p>
226     <p>
227       Francisco Dominguez will be talking about Software Defined Networks, which
228       for example can turn multiple flakey internet connections into one reliable
229       one.
230     </p>
231     <p>
232       The speakers are:
233       <ul>
234         <li>John Stix - President, Fibernetics</li>
235         <li>Francisco Dominguez - CTO, Fibernetics</li>
236       </ul>
237     </p>
238     <p>
239       Food and drinks will be provided!
240     </p>
241   </abstract>
242 </eventitem>
243
244 <eventitem date="2015-09-24" time="4:30 PM" room="EIT 3142"
245            title="CSC and WiCS Career Panel">
246   <short>
247     <p>
248       The CSC is joining WiCS to host a career panel! Come hear from Waterloo
249       alumni as they speak about their time at Waterloo, experience with coop,
250       and life beyond the university. Please register at http://bit.ly/1OyJP6D
251     </p>
252   </short>
253   <abstract>
254     <p>
255       The CSC is joining WiCS to host a career panel! Come hear from Waterloo
256       alumni as they speak about their time at Waterloo, experience with coop,
257       and life beyond the university. A great chance to network and seek
258       advice!
259     </p>
260     <p>
261       The panelists are:
262       <ul>
263         <li>Joanne Mckinley - Software Engineer, Google</li>
264         <li>Carol Kilner - COO, BanaLogic Corporation</li>
265         <li>Harshal Jethwa - Consultant, Infusion</li>
266         <li>Dan Collens - CTO, Big Roads</li>
267       </ul>
268     </p>
269     <p>
270       Food and drinks will be provided! Please register
271       <a href="https://docs.google.com/forms/d/1G-8LFLgxQUkahXvODpS2cVSvceNibTt18Uc8TnhlKI8/viewform?usp=send_form">here</a>
272     </p>
273   </abstract>
274 </eventitem>
275
276 <eventitem date="2015-09-22" time="9 PM" room="MC 3001"
277            title="Results of Fall 2015 Elections">
278   <short>
279     <p>
280       The Computer Science Club has elected its executive for the term, and a new Office Manager and System Administrator have been appointed.
281     </p>
282     <p>
283       See inside for results.
284     </p>
285   </short>
286   <abstract>
287     <p>
288       The Computer Science Club has elected its executive for the term, and a new Office Manager and System Administrator have been appointed.
289       The quorum for elections had been reached, and voting members of the CSC voted for their President, Vice President, Treasurer, and Secretary from among many qualified candidates.
290       The new elected executive then proceeded to appoint a System Administrator (who became part of the executive <i>ex officio</i>) and an Office Manager.
291
292       The appointment of a Librarian was delayed because no suitable and willing candidate was found.
293     </p>
294     <p>
295        The results of the elections are:
296       <ul>
297         <li>Simone Hu - President</li>
298         <li>Theo Belaire - Vice President</li>
299         <li>Jordan Upiter - Treasurer</li>
300         <li>Daniel Marin - Secretary</li>
301         <li>Jordan Pryde - System Administrator</li>
302         <li>Office Manager - Ilia Chtcherbakov</li>
303       </ul>
304     </p>
305   </abstract>
306 </eventitem>
307
308
309 <eventitem date="2015-09-22" time="7 PM" room="MC 3001"
310            title="Fall 2015 Elections">
311   <short>
312     <p>
313       The Computer Science Club will be holding elections for the Fall 2015
314       term on Tuesday, September 22nd in MC Comfy (MC 3001) at 19:00. During
315       the meeting, the president, vice-president, treasurer and secretary will
316       be elected, the sysadmin will be ratified, and the librarian and office
317       manager will be appointed.
318     </p>
319     <p>
320       See inside for nominations.
321     </p>
322   </short>
323   <abstract>
324     <p>
325       The Computer Science Club will be holding elections for the Fall 2015
326       term on Tuesday, September 22nd in MC Comfy (MC 3001) at 19:00. During
327       the meeting, the president, vice-president, treasurer and secretary will
328       be elected, the sysadmin will be ratified, and the librarian and office
329       manager will be appointed.
330     </p>
331     <p>
332       If you'd like to run for any of these positions or nominate someone, you
333       can write your name on the board in the CSC office (MC 3036/3037) or
334       send me (Charlie) an email at cro@csclub.uwaterloo.ca. You can also
335       deposit nominations in the CSC mailbox in MathSoc or present them to me
336       in person. Nominations will close at 18:00 on Monday, September  21st.
337       All members are welcome to run! First-years are especially encouraged to
338       run for secretary, office manager, and librarian, but they are not
339       limited to those positions.
340     </p>
341   </abstract>
342 </eventitem>
343
344 <eventitem date="2015-09-17" time="6 PM" room="MC 2065"
345            title="Google Cardboard">
346   <short>
347     <p>
348       Come for a talk from Rob Suderman on Cardboard, Google's recent
349       exploration in affordable, cereal box based Virtual Reality.
350     </p>
351   </short>
352   <abstract>
353     <p>
354       Come for a talk from Rob Suderman on Cardboard, Google's recent
355       exploration in affordable, cereal box based Virtual Reality.
356     </p>
357     <p>
358       Learn about the tools available to make your own application, some of
359       the pitfalls to avoid, and an overview of rendering virtual reality
360       content with some tips and tricks on high performance rendering. The
361       talk will contain content for everyone interested!
362     </p>
363   </abstract>
364 </eventitem>
365
366 <!-- Spring 2015 -->
367
368 <eventitem date="2015-07-16" time="6 PM" room="MC 4064"
369            title="Algorithms for Shortest Paths">
370   <short>
371     <p>
372       Come to this exciting talk about path-finding algorithms which
373       is being presented by Professor Anna Lubiw.
374     </p>
375   </short>
376   <abstract>
377     <p>
378       Finding shortest paths is a problem that comes up in many applications:
379       Google maps, network routing, motion planning, connectivity in social
380       networks, and etc.
381       The domain may be a graph, either explicitly or implicitly represented,
382       or a geometric space.
383     </p>
384     <p>
385       Professor Lubiw will survey the field, from Dijkstra's foundational algorithm to
386       current results and open problems.
387       There will be lots of pictures and lots of ideas.
388     </p>
389     <p>
390       <a href="http://mirror.csclub.uwaterloo.ca/csclub/shortest-paths-CSclub.pdf">Click here to see the slides from the talk.</a>
391     </p>
392     <p>
393       <a href="/media/Algorithms%20for%20Shortest%20Paths">Click here for the recorded talk.</a>
394     </p>
395     </abstract>
396 </eventitem>
397
398 <eventitem date="2015-07-08" time="6 PM" room="MC 4060"
399            title="Infrasound is all around us">
400   <short>
401     <p>
402       Ambient infra sound surrounds us. Richard Mann presents his current
403       research and equipment on measuring infra sound, and samples of recorded
404       infra sound.
405     </p>
406   </short>
407   <abstract>
408     <p>
409       Infra sound refers to sound waves below the range of human hearing.
410       Infra sound comes from a number of natural phenomena including weather
411       changes, thunder, and ocean waves.  Common man made sources include
412       heating and ventilation systems, industrial machinery, moving vehicle
413       cabins (air, trains, cars), and energy generation (wind turbines, gas
414       plants).
415       <br></br>
416       In this talk Richard Mann will present equipment he has built to measure infra sound, and
417       analyse some of the infra sound he has recorded.
418       <br></br>
419       Note: In Winter 2016 Richard Mann will be offering a new course, in Computer Sound.  The
420       course will appear as CS489/CS689 ("Topics in Computer Science").  This
421       is a project-based course (60% assignments, 40% project, no final).
422       Details at his web page,
423       <a href="http://www.cs.uwaterloo.ca/~mannr">~mannr</a>.
424     </p>
425     </abstract>
426 </eventitem>
427
428 <eventitem date="2015-06-26" time="7:00 PM" room="Laurel Creek Firepit"
429            title="WiCS and CSC Go Outside">
430   <short>
431     <p>Come hang out with the Women in Computer Science and the Computer Science Club! There will be s'mores and frozen yogurt. Also fire. And a creek. Let's enjoy the outdoors!</p>
432   </short>
433   <abstract>
434     <p>Come hang out with the Women in Computer Science and the Computer Science Club! There will be s'mores and frozen yogurt. Also fire. And a creek. Let's enjoy the outdoors!</p>
435   </abstract>
436 </eventitem>
437
438 <eventitem date="2015-06-19" time="6:00 PM" room="MC 3003"
439            title="UNIX 102">
440   <short>
441     <p>n things SCS hasn't told you about the shell</p>
442   </short>
443   <abstract>
444     <p>
445       This is a continuation of the Unix10X series of seminars that cover the use
446       of *nix environments, largely through interacting with a command line shell. In
447       this instalment we will be covering some of what the School of Computer
448       Science has left out of their introduction to the Command Line / Bash (from
449       cs246), as well as a brief introduction to having a useful prompt.
450       <br></br>
451       Topics to be discussed include:
452       <ul>
453         <li>Lost Bash: fancy expansion, arrays, and shopt</li>
454         <li>The File System is scary: your file names contain white space and newlines</li>
455         <li>Where Am I: A brief introduction to prompt customization</li>
456       </ul>
457     </p>
458   </abstract>
459 </eventitem>
460
461 <eventitem date="2015-05-22" time="4:00 PM" room="MC 3001 (Coomfy)"
462            title="By-Elections">
463   <short>
464     <p>
465       As there are vacancies in the executive council, there will be
466       by-election on May 22nd. The following positions are open for election:
467       <ul>
468         <li>Treasurer</li>
469         <li>Secretary</li>
470       </ul>
471     </p>
472     <p>
473       The executive are also looking for people who may be interested in the
474       following positions:
475       <ul>
476         <li>Systems Administrator</li>
477         <li>Office Manager</li>
478         <li>Librarian</li>
479       </ul>
480     </p>
481   </short>
482 </eventitem>
483
484 <!-- Winter 2015 -->
485
486 <eventitem date="2015-04-02" time="5:30 PM" room="MC 4020"
487            title="Describing and Synthesizing Microfluidics">
488   <short>
489     <p>
490       Derek Rayside presents current research on the field of microfluidics.
491       Microfluidics are currently developed mainly by trial and error. How can
492       this be improved?
493     </p>
494   </short>
495   <abstract>
496     <p>
497       Microfluidics is an exciting new area concerned with designing devices
498       that perform some medical diagnoses and chemical synthesis tasks orders
499       of magnitude faster and less expensively than traditional techniques.
500       However, microfluidic device design is currently a black art, akin to
501       how digital circuits were designed before 1980.
502       <br></br>
503       We have developed a
504       hardware description language that is appropriate for the description
505       and synthesis of both single-phase and multi-phase microfluidic devices.
506       These are new results that have not yet been published. This is
507       collaborative work with other research groups in Mechanical Engineering,
508       Chemical Engineering, and Electrical Engineering.
509     </p>
510     </abstract>
511 </eventitem>
512
513 <eventitem date="2015-03-27" time="6:00 PM" room="EIT 1015"
514            title="Constitutional GM and Code Party 1">
515   <short>
516     <p>
517       GM for the W2015 term, two main amendments to be discussed: Requiring
518       elections to be held within two weeks of the beginning of term and
519       adopting a club-wide code of conduct.
520       <br></br>
521       Code Party 1 follows, we're doing timed code golf problems, T-shirts might
522       find themselves on people who do well on code golf.
523     </p>
524   </short>
525   <abstract>
526     <p>
527       GM for the W2015 term, two main amendments to be discussed: Requiring
528       elections to be held within two weeks of the beginning of term and
529       adopting a club-wide code of conduct.
530       <br></br>
531       Code Party 1 follows, we're doing timed code golf problems, T-shirts might
532       find themselves on people who do well on code golf.
533     </p>
534     </abstract>
535 </eventitem>
536
537 <eventitem date="2015-03-10" time="6:00 PM" room="MC 4040"
538            title="Runtime Type Inference in Dynamic Languages - Day 2">
539   <short>
540     <p>
541       Day 2 of Runtime Type Inference in Dynamic Languages with Kannan Vijayan
542     </p>
543   </short>
544   <abstract>
545     <p>
546       Day 2 of Runtime Type Inference in Dynamic Languages with Kannan Vijayan
547     </p>
548     </abstract>
549 </eventitem>
550
551 <eventitem date="2015-03-09" time="6:00 PM" room="MC 4040"
552            title="Runtime Type Inference in Dynamic Languages - Day 1">
553   <short>
554     <p>
555       Javascript is fast. In some cases, very close to compiled-language fast.
556       How is this even possible? How do we know what types our variables have?
557       How can we optimize it well? Kannan Vijayan will be talking about the
558       historical advances in JIT-compilation of dynamically typed programs over
559       two days. Of course, both of those talks will have free food.
560     </p>
561   </short>
562   <abstract>
563     <p>
564       How do we make dynamic languages fast? Today, modern Javascript engines
565       have demonstrated that programs written in dynamically typed scripting lan-
566       guages can be executed close to the speed of programs written in languages
567       with static types. So how did we get here? How do we extract precious type
568       information from programs at runtime? If any variable can hold a value of any
569       type, then how can we optimize well?
570       <br></br>
571       This talk covers a bit of the history of the techniques used in this space, and
572       tries to summarize, in broad strokes, how those techniques come together to
573       enable efficient jit-compilation of dynamically typed programs.
574       To do the topic justice, Kannan Vijayan will be talking the Monday and
575       Tuesday March 9th and 10th.
576       <br></br>
577       Does that mean two consecutive days of free food? Yes it does.
578     </p>
579   </abstract>
580 </eventitem>
581
582 <eventitem date="2015-03-03" time="6:00 PM" room="MC 2038"
583            title="SAT and SMT solvers">
584   <short>
585     <p>
586       Murphy Berzish explains how to programmatically determine if a program is satisfiable,
587       and how to find a concrete counterexample if it is unsatisfiable. At the core
588       are SAT/SMT solvers. SAT theory deals with Boolean Satisfiability solvers,
589       while SMT theory--Satisfiability Modulo a Theory--allows SMT to be extended
590       to common data structures. Free food!
591     </p>
592   </short>
593   <abstract>
594     <p>
595       Does your program have an overflow error? Will it work with all inputs? How
596       do you know for sure? Test cases are the bread and butter of resilient design,
597       but bugs still sneak into software. What if we could prove our programs are
598       error-free?
599       <br></br>
600       Boolean Satisfiability (SAT) solvers determine the ‘satisfiability’ of boolean
601       set of equations for a set of inputs. An SMT solver (Satisfiability Modulo
602       a Theory) applies SMT to bit-vectors, strings, arrays, and more. Together,
603       we can reduce a program and prove it is satisfiable, or provide a concrete
604       counter-example. The implications of this are computer-aided reasoning tools
605       for error-checking in addition to much more robust programs.
606       <br></br>
607       In this talk Murphy Berzish will give an overview of SAT/SMT theory and
608       some real-world solution methods. He will also demonstrate applications of
609       SAT/SMT solvers in theorem proving, model checking, and program verification.
610       <br></br>
611       What else? Oh yes, refreshments and drinks will be served. Come out!
612     </p>
613   </abstract>
614 </eventitem>
615
616 <eventitem date="2015-02-27" time="6:00 PM" room="EV3 1408"
617            title="Code Party 0">
618   <short>
619     <p>
620       The first code party of Winter 2015, and we have something a litle different
621       this time. We're running a Code Retreat (coderetreat.org) with Boltmade.
622       The result of this is that you will be able to do a coding challenge, wherein
623       you implement Rule 110 (like the Game of Life). Of course, if you want to
624       work on whatever you can do that as well. Delicious free food, but RSVP!
625       <a href="https://bit.ly/code-party-0">bit.ly/code-party-0</a>
626     </p>
627   </short>
628   <abstract>
629     <p>
630       The first code party of Winter 2015, and we have something a litle different
631       this time. We're running a Code Retreat (coderetreat.org) with Boltmade.
632       The result of this is that you will be able to do a coding challenge, wherein
633       you implement Rule 110 (like the Game of Life). Of course, if you want to
634       work on whatever you can do that as well. Delicious free food, but RSVP!
635       <a href="https://bit.ly/code-party-0">bit.ly/code-party-0</a>
636     </p>
637   </abstract>
638 </eventitem>
639
640 <eventitem date="2015-02-05" time="3:30 PM" room="DC 1302"
641            title="Making Robots Behave">
642   <short>
643     <p>
644       Part of the Cheriton School of CS' Distinguished Lecture Series, MIT's Leslie Kaelbling will
645       discuss robotic AI applied to the messy real world. We make a number of
646       approximations during planning but regain robustness and effectiveness
647       through a continuous state estimation and replanning process. This allows
648       us to solve problems that would otherwise be intractable to solve optimally.
649     </p>
650   </short>
651   <abstract>
652     <p>
653       The fields of AI and robotics have made great improvements in many
654       individual subfields, including in motion planning, symbolic planning,
655       probabilistic reasoning, perception, and learning.  Our goal is to
656       develop an integrated approach to solving very large problems that are
657       hopelessly intractable to solve optimally.  We make a number of
658       approximations during planning, including serializing subtasks,
659       factoring distributions, and determinizing stochastic dynamics, but
660       regain robustness and effectiveness through a continuous state
661       estimation and replanning process.  This approach is demonstrated in
662       three robotic domains, each of which integrates perception, estimation,
663       planning, and manipulation.
664     </p>
665   </abstract>
666 </eventitem>
667
668 <eventitem date="2015-02-02" time="6:00 PM" room="MC 4063"
669            title="Racket's Magical match">
670   <short>
671     <p>
672       Theo Belaire, a fourth-year CS student, will be talking about Racket's
673       match' function. Bug resistant, legible, and super powerful! Especially
674       useful for CS 241 in writing compilers, but all-round a joy to write.
675     </p>
676   </short>
677   <abstract>
678     <p>
679       Come learn how to use the power of the Racket match construct to make your
680       code easier to read, less bug-prone and overall more awesome!
681     </p>
682     <p>
683       Theo Belaire,
684       a fourth-year CS student, will show you the basics of how this amazing
685       function works, and help you get your feet wet with some code examples and
686       advanced use cases.
687     </p>
688     <p>
689       If you're interested in knowing about the more
690       powerful features of Racket, then this is the talk for you! The material
691       covered is especially useful for students in CS 241 who are writing their
692       compiler in Racket, or are just curious about what that might look like.
693     </p>
694   </abstract>
695 </eventitem>
696
697 <eventitem date="2015-01-21" time="6:00 PM" room="MC 2017"
698            title="Alumni Tech Talk">
699   <short>
700     <p> Alex Tsay from AeroFS will talk about the high availability distributed
701        file systems they develop.
702     </p>
703     <p>The CAP Theorem outlined the fundamental limitations of a distributed system.
704     When designing a distributed system, one has to constantly be aware of the
705     trade-off between consistency and availability.
706
707     Most distributed systems are designed with consistency in mind. However, AeroFS
708     has decided to build a high-availability file system instead.
709
710     In this tech talk, I'll be presenting an overview of AeroFS file system,
711     advantages and challenges of a high-availability file system, and examine the
712     inner workings of AeroFS's core syncing algorithm.
713     </p>
714   </short>
715   <abstract>
716     <p> Alex Tsay from AeroFS will talk about the high availability distributed
717        file systems they develop.
718     </p>
719     <p>The CAP Theorem outlined the fundamental limitations of a distributed system.
720     When designing a distributed system, one has to constantly be aware of the
721     trade-off between consistency and availability.
722
723     Most distributed systems are designed with consistency in mind. However, AeroFS
724     has decided to build a high-availability file system instead.
725
726     In this tech talk, I'll be presenting an overview of AeroFS file system,
727     advantages and challenges of a high-availability file system, and examine the
728     inner workings of AeroFS's core syncing algorithm.
729     </p>
730   </abstract>
731 </eventitem>
732
733 <eventitem date="2015-01-15" time="7:00 PM" room="Comfy Lounge"
734            title="Winter 2015 Elections">
735   <short>
736     <p>Elections for Winter 2015 are being held! Submit a nomination and join
737        your fellow members in choosing this term's CSC executive. (Please note
738        the time change to 7PM.)
739     </p>
740   </short>
741   <abstract>
742     <p>The Computer Science Club will be holding its termly elections this
743        upcoming Thursday, Jan. 15 at 6PM in the Comfy Lounge (MC 3001). During
744        the election, the president, vice-president, treasurer and secretary will
745        be elected, the sysadmin will be ratified, and the librarian and office
746        manager will be appointed.
747     </p>
748     <p>Nominations are now closed. The candidates are:</p>
749     <ul>
750       <li>President:<ul>
751         <li>Luke Franceschini (<tt>l3france</tt>)</li>
752         <li>Gianni Gambetti (<tt>glgambet</tt>)</li>
753         <li>Ford Peprah (<tt>hkpeprah</tt>)</li>
754         <li>Khashayar Pourdeilami (<tt>kpourdei</tt>)</li>
755       </ul></li>
756       <li>Vice-President:<ul>
757         <li>Luke Franceschini (<tt>l3france</tt>)</li>
758         <li>Gianni Gambetti (<tt>glgambet</tt>)</li>
759         <li>Patrick Melanson (<tt>pj2melan</tt>)</li>
760         <li>Ford Peprah (<tt>hkpeprah</tt>)</li>
761         <li>Khashayar Pourdeilami (<tt>kpourdei</tt>)</li>
762       </ul></li>
763       <li>Treasurer:<ul>
764         <li>Weitian Ding (<tt>wt2ding</tt>)</li>
765         <li>Aishwarya Gupta (<tt>a72gupta</tt>)</li>
766         <li>Edward Lee (<tt>e45lee</tt>)</li>
767       </ul></li>
768       <li>Secretary:<ul>
769         <li>Ilia "itchy" Chtcherbakov (<tt>ischtche</tt>)</li>
770         <li>Luke Franceschini (<tt>l3france</tt>)</li>
771         <li>Patrick Melanson (<tt>pj2melan</tt>)</li>
772         <li>Ford Peprah (<tt>hkpeprah</tt>)</li>
773         <li>Khashayar Pourdeilami (<tt>kpourdei</tt>)</li>
774       </ul></li>
775     </ul>
776     <p>Voting will be heads-down, hands-up, restricted to MathSoc social
777        members. If you'd like to review the elections procedure, you can visit
778        our <a href="http://csclub.uwaterloo.ca/about/constitution#officers">Constitution</a>
779        page.
780     </p>
781   </abstract>
782 </eventitem>
783
784 <eventitem date="2015-01-15" time="6:00 PM" room="MC 2065"
785            title="Tech Talk: Google Fiber Internet: The Messy Bits">
786   <short>
787     <p>
788         Our speaker, Avery Pennarun, will share some not-very-secret secrets from
789         the team creating GFiber's open source router firmware, including some
790         discussion of wifi, marketing truthiness, the laws of physics, something
791         about coaxial cables, embedded ARM processors, queuing theory, signal
792         processing, hardware design, and kernel driver optimization. If you're lucky,
793         he may also rant about poor garbage collector implementations. Also, there
794         will be at least one slide containing one of those swooshy circle-and-arrow
795         lifecycle diagrams, we promise.
796     </p>
797     <p>
798         Please RSVP here: http://bit.ly/GoogleFiberTalk.
799     </p>
800   </short>
801   <abstract>
802     <p>
803         Google Fiber's Internet service offers 1000 Mbps internet to a few cities:
804         that's 100x faster than a typical home connection. The problem with going
805         so fast is it moves the bottleneck around: for the first time, your Internet
806         link may be faster than your computer, your wifi, or even your home LAN.
807     </p>
808     <p>
809         Our speaker, Avery Pennarun, will share some not-very-secret secrets from
810         the team creating GFiber's open source router firmware, including some
811         discussion of wifi, marketing truthiness, the laws of physics, something
812         about coaxial cables, embedded ARM processors, queuing theory, signal
813         processing, hardware design, and kernel driver optimization. If you're lucky,
814         he may also rant about poor garbage collector implementations. Also, there
815         will be at least one slide containing one of those swooshy circle-and-arrow
816         lifecycle diagrams, we promise.
817     </p>
818     <p>
819         About Avery Pennarun:
820         Avery graduated from the University of Waterloo in Computer Engineering,
821         started some startups and some open source projects, and now works at Google
822         Fiber on a small team building super fast wifi routers, TV settop boxes, and
823         the firmware that runs on them. He lives in New York.
824     </p>
825     <p>
826         Please RSVP here: http://bit.ly/GoogleFiberTalk.
827     </p>
828   </abstract>
829 </eventitem>
830
831 <!-- Fall 2014 -->
832
833 <eventitem date="2014-11-27" time="6:00 PM" room="MC 4020" title="Talk: Heroic Android HTTP">
834   <short>
835     <p>
836       The network is unreliable. 3G networking is slow. Using WiFi drains your battery.
837       The NSA is spying on you. Different versions of HttpURLConnection have different bugs.
838     </p>
839     <p>
840       Jesse Wilson, a software developer at Square, will be talking about OkHttp,
841       a library that he maintains, and how to use it to make your app's networking work even
842       when conditions aren't ideal. He will talk about how to configure caching to improve behavior
843       and save resources. He will talk about crypto, and he will give advice on which libraries
844       to use to make good networking easy.
845     </p>
846     <p>
847       Please RSVP here: https://www.ticketfi.com/event/77/heroic-android-http.
848     </p>
849   </short>
850 </eventitem>
851
852 <eventitem date="2014-11-25" time="5:30 PM" room="MC 4041" title="Talk: C++ ABI">
853     <short>
854         <p> C++ is an interesting study because it supports a large number of
855             powerful, abstract concepts, yet it operates very close to the
856             hardware compared to many modern programming languages. There are
857             also many implementations of C++ which must be made interoperable.
858             I will discuss some aspects of the Itanium 64 Application Binary
859             Interface (ABI) for C++, which is now the de facto standard across
860             Unix-like platforms of all architectures. In particular, I will
861             cover a number of aspects of the class system fundamental to C++:
862             data layout, polymorphic types, construction and destruction, and
863             dynamic casting.
864         </p>
865     </short>
866 </eventitem>
867
868 <eventitem date="2014-11-21" time="6:00 PM" room="M3 1006"
869     title="Code Party 1/SE Hack Day #13">
870   <short>
871     <p>
872        Why sleep when you could be hacking on $SIDE_PROJECT, or working on
873        $THE_NEXT_BIG_THING with some cool CSC/SE people?
874        Come when you want, hack on something cool, demo before you leave.
875     </p>
876     <p>
877        If you don't have a project, don't worry - we have a list of ideas,
878        and a lot of people will be looking for an extra helping hand on
879        their projects.
880     </p>
881     <p>
882        NOTE: Dinner and snacks will only be served to those working on
883        projects during the event.
884     </p>
885   </short>
886 </eventitem>
887
888 <eventitem date="2014-11-17" time="6:00 PM" room="QNC 1502"
889     title="Talk: Why Pattern Recognition is Hard, and Why Deep Neural Networks Help">
890   <short>
891     <p>
892        In the last few years, there has been breakthrough progress in pattern
893        recognition -- problems like computer vision and voice recognition.
894        This sudden progress has come from a powerful class of models called
895        deep neural networks.
896     </p>
897     <p>
898        This talk will explore what it means to do pattern recognition, why it
899        is a hard problem, and why deep neural networks are so effective. We
900        will also look at exciting and strange recent results, such as state
901        of the art object recognition in images, neural nets playing video
902        games, neural nets proving theorems, and neural nets learning to run
903        python programs!
904     </p>
905     <p>
906        Our speaker, Christopher Olah, is a math-obsessed and Haskell-loving
907        research intern from Google's Deep Learning group. He has a blog about
908        his research here: http://colah.github.io/.
909     </p>
910   </short>
911 </eventitem>
912
913 <eventitem date="2014-11-12" time="5:30 PM" room="EIT 1015"
914     title="Talk: Machine Learning at Bloomberg">
915   <short>
916     <p>
917         Kang, our guest speaker from Bloomberg, will illustrate some examples and
918         difficulties associated with working on some of the most fascinating technical
919         challenges in business and finance.
920         He will also show some of the machine learning applications at Bloomberg that are
921         useful in this environment.
922         Please show up early to ensure a spot (and dinner).
923     </p>
924   </short>
925 </eventitem>
926
927 <eventitem date="2014-11-10" time="5:30" room="RCH 205" title="Talk: From Zero to Kernel">
928   <short>
929     <p>
930         From the massive supercomputer, to your laptop, to a Raspberry Pi: all
931         computing systems run on an operating system powered by a kernel. The kernel is
932         the most fundamental software running on your computer, enabling developers and
933         users to interact with its hardware at a higher level.
934     </p>
935     <p>
936         This talk will explore the process of writing a minimal kernel from
937         scratch, common kernel responsibilities, and explore of the challenges of
938         kernel development.
939     </p>
940   </short>
941 </eventitem>
942
943 <eventitem date="2014-11-07" time="7:00 PM" room="MC Comfy" title="'Hackers' Screening">
944   <short>
945     <p>
946       Women in Computer Science (WiCS) and the Computer Science Club (CSC) will
947       meet up in the Comfy Lounge to watch a favourite cult classic: Hackers.
948       Join us as we relive our 90s teenage hacking fantasies and stuff our faces
949       with popcorn and junk food.
950     </p>
951     <p>
952       Hackers of the world, unite!
953     </p>
954   </short>
955 </eventitem>
956
957 <eventitem date="2014-10-24" time="5:00 PM" room="MC 3003"
958            title="Unix 101">
959   <short>
960     <p>
961       Interested in Unix, but don't know where to start? Then Come learn some
962       basic topics with us including interaction with the shell, motivation
963       for using it, some simple commands, and more.
964     </p>
965   </short>
966 </eventitem>
967
968 <eventitem date="2014-10-24" time="6:00 PM" room="MC Comfy"
969            title="Code Party 0">
970   <short>
971     <p>
972         Immediately after UNIX 101, we will be having our first annual code party.
973         Enjoy a free dinner, relax, and share ideas with your friends about
974         your favourite topics in computer science.  Feel free to show up
975         with or without personal projects to work on, we've got lots of ideas
976         to get started with.
977     </p>
978   </short>
979 </eventitem>
980
981 <eventitem date="2014-10-22" time="5:00 PM" room="MC 4041"
982            title="Talk: In Pursuit of the Travelling Salesman">
983   <short>
984     <p>
985         The Travelling Salesman Problem is easy to state: given a number of
986 cities along with the cost of travel between each pair, find the cheapest way
987 to visit all of the cities and return to your starting point.  However, TSP is very  difficult to solve.
988 In this talk, Professor Bill Cook will  discuss the history, applications, and computation of this
989 fascinating problem.
990     </p>
991   </short>
992   <abstract>
993     <p>
994         The Travelling Salesman Problem is easy to state: given a
995         number of cities along with the cost of travel between each
996         pair of them, find the cheapest way to visit them all and
997         return to your starting point.  Easy to state, but
998         difficult to solve.  Despite decades of research, in
999         general it is not known how to significantly improve upon
1000         simple brute-force checking.  It is a real possibility that
1001         there may never exist an efficient method that is
1002         guaranteed to solve every instance of the problem.  This
1003         is a deep mathematical question: Is there an efficient
1004         solution method or not?  The topic goes to the core of
1005         complexity theory concerning the limits of feasible
1006         computation and we may be far from seeing its
1007         resolution. This is not to say, however, that the
1008         research community has thus far come away
1009         empty-handed.  Indeed, the problem has led to a large
1010         number of results and conjectures that are both
1011         beautiful and deep, and on the practical side solution
1012         methods are used to compute optimal or near-optimal tours
1013         for a host of applied problems on a daily basis, from
1014         genome sequencing to arranging music on iPods.  In this
1015         talk we discuss the history, applications, and
1016         computation of this fascinating problem.
1017     </p>
1018   </abstract>
1019
1020 </eventitem>
1021
1022 <eventitem date="2014-09-18" time="6:00 PM" room="MC 4021"
1023            title="Talk: Building a Mobile Platform for Android and iOS">
1024   <short>
1025     <p>
1026       Come listen to a Google software engineer give a talk on building a
1027       mobile platform for Android and iOS!
1028       Wesley Tarle has been leading development at Google in Kitchener and
1029       Mountain View, and building stuff for third-party developers on
1030       Android and iOS. He's contributed to Google Play services since its
1031       inception and continues to produce APIs and SDKs focused on mobile
1032       startups.
1033       RSVP at http://goo.gl/Pwc3m4.
1034     </p>
1035   </short>
1036 </eventitem>
1037
1038
1039 <!-- Spring 2014 -->
1040
1041 <eventitem date="2014-07-25" time="7:30 PM" room="Laurel Creek Fire Pit"
1042            title="CSC Goes Outside...Again!">
1043   <short>
1044     <p>
1045       Do you like going outside? Are you vitamin-D deficient from being in the
1046       MC too long? Do you think s'mores and bonfire are a delicious
1047       combination? If so, you should join us as the CSC is going outside again!
1048       Around 7:30PM, we're going to Laurel Creek Fire Pit for some outdoor fun.
1049       Come throw frisbees, relax and eat snacks in good company - even if you
1050       aren't a fan of the outside or vitamin-D deficient! We'll also have
1051       some sort of real food - probably pizza.
1052     </p>
1053   </short>
1054 </eventitem>
1055
1056
1057 <eventitem date="2014-07-22" time="6:00 PM" room="MC 4020"
1058            title="The Most Important Parts of School (from a CS dropout)">
1059   <short>
1060     <p>
1061       Learn about the real reasons you should be in school from David Wolever,
1062       CTO of akindi and a director of PyCon Canada.
1063     </p>
1064   </short>
1065   <abstract>
1066     <p>
1067       Hindsight is 20/20, and since leaving university I’ve had five years and three
1068       startups to reflect on the most valuable things I have (and haven’t) taken away
1069       from my time in school.
1070       David studied computer science for three years at the University of Toronto
1071       before leaving to be employee zero at a Waterloo-based startup. Since then
1072       he has been a founder of two more startups, started PyCon Canada, and has
1073       written hundreds of thousands of lines of code. He is currently CTO of Akindi, a
1074       Toronto-based startup trying to make multiple choice testing a bit less terrible.
1075       He’s best found on Twitter at http://twitter.com/wolever
1076     </p>
1077   </abstract>
1078 </eventitem>
1079
1080 <eventitem date="2014-07-11" time="5:00 PM" room="MC 3003, M3 1006"
1081            title="Unix 102, Code Party 1">
1082   <short>
1083     <p>
1084       Learn how to host a website and spend the night hacking!
1085     </p>
1086   </short>
1087   <abstract>
1088     <p>
1089       Did you know that by becoming a CSC member, you get 4GB of free webspace?
1090       Join us in MC 3003 on Friday July 11 to learn how to use that space and
1091       host content for the world to see!
1092
1093       Afterwards we will be moving over to M3 1006 for a night of hacking and
1094       snacking! Work on a personal project, open source software, or anything
1095       you wish. Food will be provided for your hacking pleasure.
1096
1097       Come join us for an evening of fun, learning, and food!
1098     </p>
1099   </abstract>
1100 </eventitem>
1101
1102 <eventitem date="2014-06-25" time="6:00 PM" room="MC 2035" title="Battle Decks">
1103   <short>
1104     <p>
1105       Five slides. Five minutes. Pure fun.
1106     </p>
1107   </short>
1108   <abstract>
1109     <p>
1110       Create an entertaining slideshow and present someone else's on the spot!
1111       Join us in MC 2035 on Wednesday June 25 at 18:00 for a fun evening of
1112       quick presentations of random slide decks. An example from last semester
1113       can be found at tinyurl.com/battle-decks-example. Please e-mail your
1114       battle deck to l3france@csclub.uwaterloo.ca. Snacks will be provided to
1115       fuel your battle hunger!
1116     </p>
1117   </abstract>
1118 </eventitem>
1119
1120 <eventitem date="2014-06-19" time="5:30 PM" room="MC 4064"
1121            title="Bloomberg Technical Talk">
1122   <short>
1123     <p>
1124       Learn how functional programming is used in the real world, while
1125       enjoying free dinner, and free swag.
1126     </p>
1127   </short>
1128   <abstract>
1129     <p>
1130       Enjoy a free dinner while Max Ransan, a lead developer at Bloomberg,
1131       talks about the use of functional programming within a recently developed
1132       product from Bloomberg. This includes UI generation, domain-specific
1133       languages, and more! Free swag will also be provided.
1134     </p>
1135   </abstract>
1136 </eventitem>
1137
1138 <eventitem date="2014-06-13" time="7:30 PM" room="Laurel Creek Fire Pit"
1139            title="CSC Goes Outside">
1140   <short>
1141     <p>
1142       Come throw a frisbee, hang around a bonfire, and roast marshmellows!
1143       This is a social event just for fun, so come relax and eat snacks in
1144       good company!
1145     </p>
1146   </short>
1147   <abstract>
1148     <p>
1149       Meet at the Laurel Creek Fire Pit (the one across Ring Road from EV3)
1150       at 7:30 for a fun night of hanging out with friends. If you aren't sure
1151       where it is, meet at the office ten minutes before hand, and we will
1152       walk over together. We'll start the evening off with throwing around
1153       a frisbee or two, and as the night goes on we'll light up the fire and
1154       get some s'mores cooking!
1155     </p>
1156   </abstract>
1157 </eventitem>
1158
1159 <eventitem date="2014-05-30" time="5:30 PM" room="MC 3003, Comfy Lounge"
1160            title="Unix 101/Code Party 0">
1161   <short>
1162     <p>
1163       Interested in Unix, but don't know where to start? Then Come learn some
1164       basic topics with us including interaction with the shell, motivation
1165       for using it, some simple commands, and more.
1166     </p>
1167     <p>
1168       Afterwards we will be moving over to the MC Comfy Lounge for a
1169       fun night of hacking! The sysadmin position will also be ratified
1170       during a general meeting of the membership at this time. Come join us
1171       for an evening of fun, learning, and food!
1172     </p>
1173   </short>
1174   <abstract>
1175     <p>
1176       Interested in Unix, but don't know where to start? Then start
1177       in MC 3003 on Friday May 30 with basic topics including
1178       interaction with the shell, motivation for using it, some simple
1179       commands, and more.
1180     </p>
1181     <p>
1182       Afterwards we will be moving over to the MC Comfy Lounge for a
1183       fun night of hacking! Work on a personal project, open source
1184       software, or anything you wish. Food will be available for your
1185       hacking pleasure. The Sysadmin position will also be ratified
1186       during a general meeting at this time. Come join us for an
1187       evening of fun, learning, and food!
1188     </p>
1189   </abstract>
1190 </eventitem>
1191
1192 <eventitem date="2014-05-15" time="6:00 PM" room="Comfy Lounge"
1193            title="Spring 2014 Elections">
1194   <short>
1195     <p>The Computer Science Club will soon be holding elections for this term's
1196     executive. The president, vice president, treasurer, and secretary for the
1197     spring 2014 term will be elected. The system administrator, office manager,
1198     and librarian are also typically appointed here.
1199     </p>
1200   </short>
1201   <abstract>
1202     <p>Nominations are now closed. The candidates are:</p>
1203     <ul>
1204       <li>President:<ul>
1205         <li>Jinny Kim (<tt>yj7kim</tt>)</li>
1206         <li>Matthew Thiffault (<tt>mthiffau</tt>)</li>
1207         <li>Shane Creighton-Young (<tt>srcreigh</tt>)</li>
1208         <li>Hayford Peprah (<tt>hkpeprah</tt>)</li>
1209       </ul></li>
1210       <li>Vice-President:<ul>
1211         <li>Luke Franceschini (<tt>l3france</tt>)</li>
1212         <li>Jinny Kim (<tt>yj7kim</tt>)</li>
1213         <li>Shane Creighton-Young (<tt>srcreigh</tt>)</li>
1214         <li>Hayford Peprah (<tt>hkpeprah</tt>)</li>
1215       </ul></li>
1216       <li>Treasurer:<ul>
1217         <li>Luke Franceschini (<tt>l3france</tt>)</li>
1218         <li>Matthew Thiffault (<tt>mthiffau</tt>)</li>
1219         <li>Catherine Mercer (<tt>ccmercer</tt>)</li>
1220         <li>Joseph Chouinard (<tt>jchouina</tt>)</li>
1221       </ul></li>
1222       <li>Secretary:<ul>
1223         <li>Luke Franceschini (<tt>l3france</tt>)</li>
1224         <li>Catherine Mercer (<tt>ccmercer</tt>)</li>
1225         <li>Joseph Chouinard (<tt>jchouina</tt>)</li>
1226         <li>Ifaz Kabir (<tt>ikabir</tt>)</li>
1227       </ul></li>
1228     </ul>
1229   </abstract>
1230 </eventitem>
1231
1232
1233
1234 <!-- Winter 2014 -->
1235
1236
1237 <eventitem date="2014-03-28" time="7:00 PM" room="CPH 1346" title="HackWaterloo">
1238     <short>
1239         <p>Work on a software project for 24 hours in teams of up to 4 members. Swag will be provided
1240     by Facebook and Google. A Microsoft Surface Tablet will be awarded to the winning team.
1241     Register and find out more at <a href="http://hack-waterloo.com">http://hack-waterloo.com</a>.</p>
1242     </short>
1243     <abstract>
1244         <p>Work on a software project for 24 hours in teams of up to 4 members. Swag will be provided
1245     by Facebook and Google. A Microsoft Surface Tablet will be awarded to the winning team.
1246     Register and find out more at <a href="http://hack-waterloo.com">http://hack-waterloo.com</a>.</p>
1247     </abstract>
1248 </eventitem>
1249
1250 <eventitem date="2014-03-18" time="7:00 PM" room="MC 4041" title="Battle Decks">
1251     <short>
1252         <p>Create a 5-slide PowerPoint presentation about a specific topic. Bring it with
1253             you to the event (on a flash drive). Submit it into the lottery. Select a random
1254             PowerPoint presentation from the lottery and talk about it on the spot.
1255         </p>
1256     </short>
1257     <abstract>
1258         <p>Create a 5-slide PowerPoint presentation about a specific topic. Bring it with
1259             you to the event (on a flash drive). Submit it into the lottery. Select a random
1260             PowerPoint presentation from the lottery and talk about it on the spot.
1261         </p>
1262     </abstract>
1263 </eventitem>
1264
1265 <eventitem date="2014-03-14" time="7:00 PM" room="Comfy Lounge" title="Code Party 1">
1266     <short>
1267         <p>We will be having our 2nd code party this term. Enjoy a free dinner, relax, and
1268            share ideas with your friends about your favourite topics in computer science.
1269         </p>
1270     </short>
1271     <abstract>
1272         <p>We will be having our 2nd code party this term. Enjoy a free dinner, relax, and
1273            share ideas with your friends about your favourite topics in computer science.
1274         </p>
1275     </abstract>
1276 </eventitem>
1277
1278 <eventitem date="2014-02-13" time="5:30 PM" room="MC 3003" title="UNIX 101">
1279     <short><p>Learn the basics of using tools found commonly on UNIX-like operating systems.
1280     For students new to this topic, knowledge gained from UNIX 101 would be useful in coursework.</p>
1281     </short>
1282     <abstract><p>Learn the basics of using tools found commonly on UNIX-like operating systems.
1283     For students new to this topic, knowledge gained from UNIX 101 would be useful in coursework.</p>
1284     </abstract>
1285 </eventitem>
1286
1287 <eventitem date="2014-02-13" time="6:30 PM" room="Comfy Lounge" title="Code Party 0">
1288     <short><p>Immediately after UNIX 101, we will be having our first annual code party.
1289             Enjoy a free dinner, relax, and share ideas with your friends about
1290             your favourite topics in computer science.</p>
1291     </short>
1292     <abstract><p>Immediately after UNIX 101, we will be having our first annual code party.
1293             Enjoy a free dinner, relax, and share ideas with your friends about
1294            your favourite topics in computer science.</p>
1295     </abstract>
1296 </eventitem>
1297
1298
1299 <eventitem date="2014-02-04" time="5:30 PM" room="MC 4058" title="Bloomberg Talk">
1300   <short><p>
1301           Bloomberg's Alex Scotti will be presenting a talk this Tuesday on concurrency control
1302           implementations in relational databases. Free swag and dinner will be provided.
1303   </p></short>
1304   <abstract>
1305       <p>Join Alex Scotti of Bloomberg LP for a discussion of concurrency control
1306           implementation in relational database systems. Focus will be placed on the
1307           optimistic techniques as employed and developed inside Combdb2, Bloomberg's
1308           database system.</p>
1309       <p>Food will be served by Kismet!</p>
1310   </abstract>
1311 </eventitem>
1312
1313
1314 <eventitem date="2014-01-16" time="5:30 PM" room="Comfy Lounge" title="Winter 2014 Elections">
1315   <short><p>
1316      Elections for Winter 2014 are being held! The Executive will be elected,
1317      and the Office Manager and Librarian will be appointed by the new
1318      executive.
1319   </p></short>
1320   <abstract>
1321     <p>It's elections time again! On Thursday, January 16 at 5:30PM, come to the Comfy Lounge
1322     on the 3rd floor of the MC to vote in this term's President, Vice-President, Treasurer
1323     and Secretary. The Sysadmin, Librarian, and Office Manager will also be chosen at this time.</p>
1324
1325     <p>Nominations are open until 4:30PM on Wednesday, January 15, and can be written
1326     on the CSC office whiteboard (yes, you can nominate yourself). Full CSC
1327     members can vote and are invited to drop by. You may also send nominations to
1328     the <a href="mailto:cro@csclub.uwaterloo.ca">Chief Returning Officer</a> by email.</p>
1329
1330     <p>Nominations are now closed. The candidates are:</p>
1331     <ul>
1332       <li>President:<ul>
1333         <li>Jonathan Bailey (<tt>jj2baile</tt>)</li>
1334         <li>Nicholas Black (<tt>nablack</tt>)</li>
1335         <li>Bryan Coutts (<tt>b2coutts</tt>)</li>
1336         <li>Annamaria Dosseva (<tt>mdosseva</tt>)</li>
1337         <li>Youn Jin Kim (<tt>yj7kim</tt>)</li>
1338         <li>Visha Vijayanand (<tt>vvijayan</tt>)</li>
1339       </ul></li>
1340       <li>Vice-President:<ul>
1341         <li>Nicholas Black (<tt>nablack</tt>)</li>
1342         <li>Bryan Coutts (<tt>b2coutts</tt>)</li>
1343         <li>Visha Vijayanand (<tt>vvijayan</tt>)</li>
1344       </ul></li>
1345       <li>Treasurer:<ul>
1346         <li>Jonathan Bailey (<tt>jj2baile</tt>)</li>
1347         <li>Nicholas Black (<tt>nablack</tt>)</li>
1348         <li>Marc Burns (<tt>m4burns</tt>)</li>
1349         <li>Bryan Coutts (<tt>b2coutts</tt>)</li>
1350       </ul></li>
1351       <li>Secretary:<ul>
1352         <li>Jonathan Bailey (<tt>jj2baile</tt>)</li>
1353         <li>Bryan Coutts (<tt>b2coutts</tt>)</li>
1354         <li>Mark Farrell (<tt>m4farrel</tt>)</li>
1355       </ul></li>
1356     </ul>
1357   </abstract>
1358 </eventitem>
1359
1360
1361 <!-- Fall 2013 -->
1362 <eventitem date="2013-11-23" time="TBD" room="Toronto, ON"
1363            title="CSC Goes to Toronto Erlang Factory Lite 2013">
1364   <short><p>
1365     The CSC has been invited to attend this Erlang conference in Toronto. If
1366     you are interested in attending, please sign up on our <a
1367     href="http://goo.gl/8XOELB">web form</a>. We have submitted a MEF proposal
1368     to cover the transportation fees of up to 25 math undergraduates.
1369   </p></short>
1370   <abstract><p>
1371     The CSC has been invited to attend this Erlang conference in Toronto. If you
1372     are interested in attending, please sign up on our <a
1373     href="http://goo.gl/8XOELB">web form</a>, so we can coordinate the group.
1374     We have submitted a MEF proposal to cover the transportation fees of up to
1375     25 math undergraduates to attend. You will be responsible for your
1376     conference fee and transportation, and if the MEF proposal is granted, you
1377     can submit your bus tickets/mileage record and conference badge to MEF for
1378     a reimbursement. From the <a
1379     href="https://www.erlang-factory.com/conference/Toronto2013">conference
1380     website</a>:</p>
1381
1382     <p>"Our first ever Toronto Erlang Factory Lite has been confirmed. Join us
1383     on 23 November for a full day debate on Erlang as a powerful tool for
1384     building innovative, scalable and fault tolerant applications. Our speakers
1385     will showcase examples from their work experience and their personal success
1386     stories, thus presenting how Erlang solves the problems related to
1387     scalability and performance. At this event we will focus on what Erlang
1388     brings to the table in the multicore era."
1389   </p></abstract>
1390 </eventitem>
1391
1392 <eventitem date="2013-11-22" time="6:30PM" room="MC 3001 (Comfy)"
1393            title="Hackathon-Code Party!!">
1394   <short><p>
1395     Join us for a night of code, food, and caffeine! There will be plenty of
1396     edibles and hacking for your enjoyment. If you are interested in getting
1397     involved in Open Source, there will be mentors on hand to get you started.
1398     Hope to see you there&mdash;bring your friends!
1399   </p></short>
1400  <abstract><p>
1401     Join us for a night of code, food, and caffeine! There will be plenty of
1402     edibles and hacking for your enjoyment, including a full catered dinner
1403     courtesy of the Mathematics Society.</p>
1404
1405     <p>There will be two Open Source projects featured at tonight's code
1406     party, with mentors on hand for each. Here is a quick summary of each of
1407     the projects available:</p>
1408
1409     <p><b><a href="http://openhatch.org">OpenHatch</a>:</b> Not sure where to
1410     start? Not to fear! OpenHatch is a project that seeks to introduce people
1411     to Open Source for the first time and help you get involved. There will be
1412     a presentation with an introduction to the tools and information you will
1413     need, and mentors present to help you get set up to fix your first
1414     bug.</p>
1415
1416     <p><b><a
1417 href="http://uwaterloo.ca/games-institute/events/social-innovation-simulation-design-jam-day-1">Social
1418     Innovation Simulation Design Jam</a>:</b> The UWaterloo Games Institute and
1419     SiG@Waterloo will be partnering with us tonight to kick off their weekend
1420     hackathon Design Jam. They seek coders, artists, writers, database and
1421     graphics people to help them out with their project.
1422   </p></abstract>
1423 </eventitem>
1424
1425 <eventitem date="2013-11-26" time="5:00PM" room="MC 2038" title="Disk Encryption">
1426   <short><p>
1427     The last lecture of our security and privacy series. By MMath alumnus
1428     Zak Blacher.
1429   </p></short>
1430   <abstract><p>
1431     In Zak's talk, "Disk Encryption: Digital Forensic Analysis &amp; Full
1432     Volume Encryption", he aims to cover filesystem forensic analysis
1433     and counter forensics by addressing the entire design stack; starting with
1434     filesystem construction, design, and theory, and drilling down to the inner
1435     workings of hard drives (modern platter hdds, as well as mlc-ssds). This
1436     talk leads in to a discussion on full volume encryption, and how this helps
1437     to protect one's data.</p>
1438
1439     <p>The sixth and final lecture of our security and privacy series.
1440   </p></abstract>
1441 </eventitem>
1442
1443 <eventitem date="2013-11-12" time="5:00PM" room="MC 4060" title="Trust in ISPs">
1444   <short><p>
1445     This is the fifth lecture of six in the Security and Privacy Lecture
1446     Series. By founding member of the Canadian Cybersecurity Institute and
1447     employee of local ISP Sentex Sean Howard.
1448   </p></short>
1449   <abstract><p>
1450     Bell's recent announcement of their use of Deep Packet Inspection (DPI)
1451     brings to light a long-standing issue: your internet service provider (ISP)
1452     pwns you. They control your IP allocation, your DNS, your ARP, the AS paths.
1453     The question has never been about ability&mdash;it's about trust. Whether
1454     Rogers, AT&amp;T, Virgin, Telus, Vodafone or Wind, your onramp to the
1455     internet is your first and most potent point of security failure.</p>
1456
1457     <p>Founding member of the Canadian Cybersecurity Institute and employee of
1458     local ISP Sentex Sean Howard will vividly demo the reasons you need to be
1459     ble to trust your internet provider. Come for the talk, stay for the
1460     pizza!</p>
1461
1462     <p>This is the fifth lecture of six in the Security and Privacy Lecture
1463     Series.
1464   </p></abstract>
1465 </eventitem>
1466
1467
1468 <eventitem date="2013-11-05" time="6:00PM" room="MC 3001 (Comfy)"
1469            title="Hands On Seminar on Public Key Cryptography">
1470   <short><p>
1471     The fourth event in our security and privacy series. By undergraduate
1472     students Murphy Berzish and Nick Guenther.
1473   </p></short>
1474   <abstract><p>
1475 Nick Guenther and Murphy Berzish will be holding a hands-on seminar in the
1476 Comfy to introduce you to public-private key crypto and how you can practically
1477 use it, so bring your laptops! You will learn about PGP, an encryption protocol
1478 that provides confidentiality and authenticity. At the seminar, you will learn
1479 how to use PGP to send encrypted email and files, provably identify yourself to
1480 others, and verify data. Bring a laptop so we can help help you generate your
1481 first keypair and give you the chance to form a Web of Trust with your
1482 peers.</p>
1483
1484 <p>A GSIntroducer from <a href="www.GSWoT.org">www.GSWoT.org</a> will be on
1485 hand. If you are interested in obtaining an elevated level of trust, bring
1486 government-issued photo-ID.</p>
1487
1488 <p>There will also be balloons and cake.
1489   </p></abstract>
1490 </eventitem>
1491
1492
1493 <eventitem date="2013-10-24" time="6:30PM" room="DC 1302"
1494            title="Practical Tor Usage">
1495   <short><p>
1496     The third lecture of our security and privacy series. By undergraduate
1497     student Simon Gladstone.
1498   </p></short>
1499   <abstract><p>
1500     An introduction to and overview of how to use the Tor Browser Bundle to
1501     browse the "Deep Web" and increase security while browsing the Internet. Tor
1502     is not the be all end all of Internet security, but it is definitely a step
1503     up from using the more popular browsers such as Chrome, Firefox, or
1504     Safari.</p>
1505
1506     <p>The third lecture of our security and privacy series. By undergraduate
1507     student Simon Gladstone.
1508   </p></abstract>
1509 </eventitem>
1510
1511
1512 <eventitem date="2013-10-15" time="5:00PM" room="MC 4060"
1513            title="Tunnels and Censorship">
1514   <short><p>
1515     The second lecture of our security and privacy series. By undergraduate student
1516     Eric Dong.
1517   </p></short>
1518   <abstract><p>
1519     In this talk, I will discuss censorship firewalls used in countries such as
1520     China and Iran, and how to counteract them. The focus is on advanced
1521     application-layer and Deep Packet Inspection firewalls, and unexpected hurdles
1522     in overcoming censorship by these firewalls due to the need for very
1523     unconventional adversary models. Approaches of the privacy tool Tor, popular
1524     proprietary freeware Ultrasurf and Freegate, payware VPNs, and my own
1525     experimental Kirisurf project are examined, where strengths and difficulties
1526     with each system are noted.</p>
1527
1528     <p>The second lecture of our security and privacy series. By undergraduate
1529     student Eric Dong.
1530   </p></abstract>
1531 </eventitem>
1532
1533
1534 <eventitem date="2013-10-08" time="5:00PM" room="MC 4041"
1535            title="Why Should You Care About Security and Privacy">
1536   <short><p>
1537     The first lecture of our security and privacy series. By PhD student Sarah
1538     Harvey.
1539   </p></short>
1540   <abstract><p>
1541     Recent media coverage has brought to light the presence of various government
1542     agencies' surveillance programs, along with the possible interference of
1543     governments in the establishment and development of standards and software.
1544     This brings to question of just how much we need to be concerned about the
1545     security and privacy of our information.</p>
1546
1547     <p>In this talk we will discuss what all this means in technological and social
1548     contexts, examine the status quo, and consider the long-standing implications.
1549     This talk assumes no background knowledge of security or privacy, nor any
1550     specific technical background. All students are welcome and encouraged to
1551     attend.</p>
1552
1553     <p>The first lecture of our security and privacy series. By PhD student
1554     Sarah Harvey.
1555   </p></abstract>
1556 </eventitem>
1557
1558
1559 <eventitem date="2013-10-03" time="6:30PM" room="PHY 150"
1560            title="C++ GoingNative Lectures">
1561   <short><p>
1562     We will be showing GoingNative
1563     lectures from some of the top individuals working on C++
1564     approximately biweekly on Thursdays at 6:30PM in the PHY 150 theatre. Every
1565     lecture will be accompanied with free pizza and drinks! Dates are Oct. 3, 17,
1566     31 and Nov. 7 and 21. Please view this event in detail for more information.
1567   </p></short>
1568   <abstract><p>
1569     If you're not familiar with the C++ GoingNative series, you can check them
1570     out on the <a
1571     href="http://channel9.msdn.com/Events/GoingNative/2013">GoingNative
1572     website</a>.</p>
1573
1574     <p>We will be showing lectures from some of the top individuals working on C++
1575     approximately biweekly on Thursdays in the PHY 150 theatre. Every lecture will
1576     be accompanied with free pizza and drinks! Here is our schedule and the planned
1577     showings:</p>
1578
1579     <ul>
1580       <li>Thu. Oct. 3,  6:30PM: Stroustrup - The Essence of C++</li>
1581       <li>Thu. Oct. 17, 6:30PM: Lavavej - Don't Help The Compiler</li>
1582       <li>Thu. Oct. 31, 6:30PM: Meyers - An Effective C++ Sampler</li>
1583       <li>Thu. Nov. 7,  6:30PM: Alexandrescu - Writing Quick C++ Code, Quickly</li>
1584       <li>Thu. Nov. 21, 6:30PM: Parent - C++ Seasoning</li>
1585     </ul>
1586   </abstract>
1587 </eventitem>
1588
1589 <eventitem date="2013-10-17" time="6:30PM" room="PHY 150"
1590            title="C++ Night 0x02 - Don't Help The Compiler">
1591   <short><p>
1592     The second in a series of recorded talks from GoingNative 2013. Featuring
1593 Stephan T. Lavavej.
1594   </p></short>
1595   <abstract><p>
1596     The second in a series of recorded talks from GoingNative 2013. Featuring
1597 Stephan T. Lavavej.
1598   </p><p>
1599     C++ has powerful rules for dealing with low-level program structure.
1600 Before a program is ever executed, the compiler determines valuable information
1601 about every expression in the source code.  The compiler understands exactly
1602 how long each object's resources will be needed (lifetime), whether each
1603 expression refers to an object that the program has no other way of accessing
1604 (rvalueness), and what operations can be performed on each object (type).
1605 Using examples from C++98 through C++14, this presentation will demonstrate how
1606 to write code that works with the compiler's knowledge to increase robustness,
1607 efficiency, and clarity.  This presentation will also demonstrate the horrible
1608 things that happen when programmers think they can do tasks that are better
1609 left to compilers.
1610   </p></abstract>
1611 </eventitem>
1612
1613
1614 <eventitem date="2013-10-31" time="6:30PM" room="PHY 150"
1615            title="C++ Night 0x03 - An Effective C++11/14 Sampler">
1616   <short><p>
1617     The third in a series of recorded talks from GoingNative 2013. Featuring
1618 Scott Meyers.
1619   </p></short>
1620   <abstract><p>
1621     The third in a series of recorded talks from GoingNative 2013. Featuring
1622 Scott Meyers.
1623   </p><p>
1624     After years of intensive study (first of C++0x, then of C++11, and most
1625 recently of C++14), Scott thinks he finally has a clue. About the effective use
1626 of C++11, that is (including C++14 revisions). At last year’s Going Native,
1627 Herb Sutter predicted that Scott would produce a new version of Effective C++
1628 in the 2013-14 time frame, and Scott’s working on proving him almost right.
1629 Rather than revise Effective C++, Scott decided to write a new book that
1630 focuses exclusively on C++11/14: on the things the experts almost always do (or
1631 almost always avoid doing) to produce clear, efficient, effective code. In this
1632 presentation, Scott will present a taste of the Items he expects to include in
1633 Effective C++11/14.
1634   </p></abstract>
1635 </eventitem>
1636
1637
1638 <eventitem date="2013-11-07" time="6:30PM" room="PHY 150"
1639            title="C++ Night 0x04 - Writing Quick Code in C++, Quickly">
1640   <short><p>
1641     The fourth in a series of recorded talks from GoingNative 2013. Featuring
1642 Andrei Alexandrescu.
1643   </p></short>
1644   <abstract><p>
1645     The fourth in a series of recorded talks from GoingNative 2013. Featuring
1646 Andrei Alexandrescu.
1647   </p><p>
1648     Contemporary computer architectures make it possible for slow code to work
1649 reasonably well. They also make it difficult to write really fast code that
1650 exploits the CPU amenities to their fullest. And the smart money is on fast
1651 code—we’re running out of cool things to do with slow code, and the battle will
1652 be on doing really interesting and challenging things at the envelope of what
1653 the computing fabric endures.
1654   </p><p>
1655     So how to write quick code, quickly? Turns out it’s quite difficult because
1656 today’s complex architectures defy simple rules to be applied everywhere. It is
1657 not uncommon that innocuous high-level artifacts have a surprisingly high
1658 impact on the bottom line of an application’s run time (and power consumed).
1659   </p><p>
1660     This talk is an attempt to set forth a few pieces of tactical advice for
1661 writing quick code in C++. Applying these is not guaranteed to produce optimal
1662 code, but is likely to put it reasonably within the ballpark.  </p><p>
1663     These tips are based on practical experience but also motivated by the
1664 inner workings of modern CPUs.
1665   </p></abstract>
1666 </eventitem>
1667
1668
1669 <eventitem date="2013-11-21" time="6:30PM" room="PHY 150"
1670            title="C++ Night 0x05 - C++ Seasoning">
1671   <short><p>
1672     The fifth in a series of recorded talks from GoingNative 2013. Featuring
1673 Sean Parent.
1674   </p></short>
1675   <abstract><p>
1676     The fifth in a series of recorded talks from GoingNative 2013. Featuring
1677 Sean Parent.
1678   </p><p>
1679     A look at many of the new features in C++ and a couple of old features you
1680 may not have known about. With the goal of correctness in mind, we’ll see how
1681 to utilize these features to create simple, clear, and beautiful code. Just a
1682 little pinch can really spice things up.
1683   </p></abstract>
1684 </eventitem>
1685
1686
1687 <eventitem date="2013-10-30" time="6:00PM" room="Bingemans"
1688            title="CSC Goes Bowling">
1689   <short><p>
1690     All CSC members and their guests are invited for a night of free bowling at
1691     Bingemans! Transportation will be provided. If you are interested in attending,
1692     please RSVP using the online form by Oct. 18. You can find it by viewing this
1693     event in detail.
1694   </p></short>
1695   <abstract><p>
1696     We are pleased to kick off the term with free bowling for all interested
1697     members at Bingemans! Transportation will be provided. If you are interested in
1698     attending, please RSVP using <a href="http://goo.gl/FsZIfK">this online
1699     form</a> by Oct. 18.</p>
1700
1701     <p>Please note the event date change (Oct. 23 to Oct. 30).
1702     The bus will be leaving from the Davis Center at 6:00PM sharp on the 30th.
1703   </p></abstract>
1704 </eventitem>
1705
1706
1707 <eventitem date="2013-09-17" time="4:30 PM" room="Comfy Lounge"
1708            title="Fall 2013 Elections">
1709   <short><p>
1710      Elections for Fall 2013 are being held! The Executive will be elected,
1711      and the Office Manager and Librarian will be appointed by the new
1712      executive.
1713   </p></short>
1714   <abstract>
1715     <p>It's elections time again! On Tuesday, Sept 17 at 4:30PM, come to the Comfy Lounge
1716     on the 3rd floor of the MC to vote in this term's President, Vice-President, Treasurer
1717     and Secretary. The Sysadmin, Librarian, and Office Manager will also be chosen at this time.</p>
1718
1719     <p>Nominations are open until 4:30PM on Monday, Sept 16, and can be written
1720     on the CSC office whiteboard (yes, you can nominate yourself). Full CSC
1721     members can vote and are invited to drop by. You may also send nominations to
1722     the <a href="mailto:cro@csclub.uwaterloo.ca"> Chief Returning Officer</a>. A
1723     full list of candidates will be posted when nominations close.</p>
1724
1725     <p>Nominations are now closed. The candidates are:</p>
1726     <ul>
1727       <li>President:<ul>
1728         <li>Dominik Ch&#0322;obowski (<tt>dchlobow</tt>)</li>
1729         <li>Elana Hashman (<tt>ehashman</tt>)</li>
1730         <li>Sean Hunt (<tt>scshunt</tt>)</li>
1731         <li>Marc Burns (<tt>m4burns</tt>)</li>
1732         <li>Matt Thiffault (<tt>mthiffau</tt>)</li>
1733       </ul></li>
1734       <li>Vice-President:<ul>
1735         <li>Dmitri Tkatch (<tt>dtkatch</tt>)</li>
1736         <li>Marc Burns (<tt>m4burns</tt>)</li>
1737         <li>Sean Hunt (<tt>scshunt</tt>)</li>
1738         <li>Visha Vijayanand (<tt>vvijayan</tt>)</li>
1739       </ul></li>
1740       <li>Treasurer:<ul>
1741         <li>Bernice Herghiligiu (<tt>baherghi</tt>)</li>
1742         <li>Dominik Ch&#0322;obowski (<tt>dchlobow</tt>)</li>
1743         <li>Jonathan Bailey (<tt>jj2baile</tt>)</li>
1744         <li>Marc Burns (<tt>m4burns</tt>)</li>
1745       </ul></li>
1746       <li>Secretary:<ul>
1747         <li>Dominik Ch&#0322;obowski (<tt>dchlobow</tt>)</li>
1748         <li>Edward Lee (<tt>e45lee</tt>)</li>
1749         <li>Marc Burns (<tt>m4burns</tt>)</li>
1750       </ul></li>
1751     </ul>
1752   </abstract>
1753 </eventitem>
1754
1755 <!-- Spring 2013 -->
1756 <eventitem date="2013-07-26" time="7:00PM" room="Comfy Lounge" title="Code Party 1">
1757   <short><p>
1758     Come out to the Code Party happening in the Comfy Lounge on July 26 at 7:00 PM!
1759     Why sleep when you could be hacking on $your_favourite_project or doing
1760     $something_classy in great company? Join us for a night of coding, snacks,
1761     and camaraderie!
1762   </p></short>
1763   <abstract><p>
1764     Come out to the Code Party happening in the Comfy Lounge on July 26 at 7:00 PM!
1765     Why sleep when you could be hacking on $your_favourite_project or doing
1766     $something_classy in great company? Join us for a night of coding, snacks,
1767     and camaraderie!
1768   </p></abstract>
1769 </eventitem>
1770
1771 <eventitem date="2013-07-22" time="5:00PM" room="MC 4020"
1772 title="The Future of 3D Graphics is in Software!">
1773   <short><p>
1774     Convergence between CPU and GPU approaches to processing sets the stage for an
1775     exciting transition to 3D rendering that takes place entirely in software.
1776     TransGaming's Nicolas Capens and Gavriel State will speak about this convergence
1777     and how it will influence the future of graphics.
1778   </p></short>
1779   <abstract><p>
1780     For some time now, it has been clear that there is strong momentum for convergence
1781     between CPU and GPU technologies. Initially, each technology used radically different
1782     approaches to processing, but over time GPUs have evolved to support more general
1783     purpose use while CPUs have evolved to include advanced vector processing and multiple
1784     execution cores. At TransGaming, we believe that this convergence will continue to the
1785     point where typical systems have only one type of processing unit, with large numbers
1786     of cores and very wide vector execution units available for high performance parallel
1787     execution. In this kind of environment, all graphics processing will ultimately take
1788     place in software.
1789   </p><p>
1790     In this talk, we will explore the converging nature of CPU and GPU approaches to
1791     processing, how dynamic specialization allows CPUs to efficiently perform tasks usually
1792     done by GPUs, and why we believe that the increased flexibility of more programmable
1793     architectures will ultimately win out over fixed function hardware, even in areas such
1794     as texture sampling.
1795   </p><p>
1796     <strong>TransGaming Inc.</strong> works at the cutting edge of 3D graphics, building
1797     technologies that bridge the gap between platform boundaries to allow games to be played
1798     on a variety of devices and operating systems. TransGaming works with other industry
1799     leaders to update established APIs such as OpenGL, while also breaking new ground in
1800     software rendering technology, which we believe will become increasingly important as
1801     CPU and GPU technologies converge.
1802   </p><p>
1803     <strong>Nicolas Capens</strong> is the architect of SwiftShader, TransGaming's high
1804     performance software renderer, and is also deeply involved in the ANGLE project, which
1805     provides efficient translation from OpenGL ES to Direct3D APIs for implementing WebGL
1806     on Windows. Nicolas received his MSci.Eng. degree in computer science from Ghent
1807     University in 2007.
1808   </p><p>
1809     <strong>Gavriel State (Gav)</strong> is TransGaming's Founder and CTO, and has worked in
1810     graphics and portability for over 20 years on dozens of platforms and APIs. Gav wrote
1811     his first software renderer when taking CS488 at UW, where he later graduated with a
1812     B.A.Sc. in Systems Design Engineering.
1813   </p></abstract>
1814 </eventitem>
1815
1816 <eventitem date="2013-07-19" time="7:00PM" room="EV3 Fire Pit" title="CSC Goes Outside!">
1817   <short><p>
1818     Do you love the combination of s'mores, burgers, and fire? Are you brave enough to
1819     face the newly-grown geese? Do you want to play some Frisbee while listening to some
1820     chill tunes? If so, come hang out with the CSC at the EV3 Fire Pit this Friday!
1821     All are welcome for some outdoor food, games, and music.
1822   </p></short>
1823   <abstract><p>
1824     Do you love the combination of s'mores, burgers, and fire? Are you brave enough to
1825     face the newly-grown geese? Do you want to play some Frisbee while listening to some
1826     chill tunes? If so, come hang out with the CSC at the EV3 Fire Pit this Friday!
1827     All are welcome for some outdoor food, games, and music.
1828   </p></abstract>
1829 </eventitem>
1830
1831 <eventitem date="2013-07-18" time="5:00PM" room="MC 4041" title="Path Tracing">
1832   <short><p>
1833     As a follow on to last term's tutorial on building a ray-tracer from scratch,
1834     this talk will be presenting the basic mechanics of how a bidirectional path-tracer
1835     creates a globally illuminated scene, advantages and limitations of this approach over
1836     other offline global illumination techniques along with a simple example path-tracer
1837     written in C++, and opportunities for hardware acceleration on GPUs, time permitting.
1838   </p></short>
1839   <abstract><p>
1840     As a follow on to last term's tutorial on building a ray-tracer from scratch,
1841     this talk will be presenting the basic mechanics of how a bidirectional path-tracer
1842     creates a globally illuminated scene, advantages and limitations of this approach over
1843     other offline global illumination techniques along with a simple example path-tracer
1844     written in C++, and opportunities for hardware acceleration on GPUs, time permitting.
1845   </p></abstract>
1846 </eventitem>
1847
1848 <eventitem date="2013-07-11" time="5:00PM" room="MC 4041" title="3D Movies and Computer Science">
1849   <short><p>
1850     While humans started making 3D motion pictures in the 1800's, several technical and
1851     artistic challenges prevented widespread interest in the medium.  By investing heavily
1852     in a computerized production pipeline, James Cameron's 2009 release of Avatar ushered
1853     in an era of mainstream interest in 3D film.  However, many technical and artistic
1854     problems still find their way into otherwise-modern 3D movies.  The talk explores some
1855     of these problems while introducing the fundamentals of 3D film-making from a CS
1856     perspective.
1857   </p></short>
1858   <abstract><p>
1859     While humans started making 3D motion pictures in the 1800's, several technical and
1860     artistic challenges prevented widespread interest in the medium.  By investing heavily
1861     in a computerized production pipeline, James Cameron's 2009 release of Avatar ushered
1862     in an era of mainstream interest in 3D film.  However, many technical and artistic
1863     problems still find their way into otherwise-modern 3D movies.  The talk explores some
1864     of these problems while introducing the fundamentals of 3D film-making from a CS
1865     perspective.
1866   </p></abstract>
1867 </eventitem>
1868
1869 <!-- <eventitem date="2013-07-05" time="7:00PM" room="EV3 Fire Pit" title="CSC Goes Outside">
1870   <short><p>
1871     Come hang out with the CSC for s'mores, burgers, Frisbees, and fire this Friday!
1872     We will be hanging out at the EV3 Fire Pit starting at 7:00PM. All are welcome to
1873     partake in the food, games, and music. See you there!
1874   </p></short>
1875   <abstract><p>
1876     Do you love the combination of s'mores, burgers, and fire? Are you brave enough to face
1877     the newly-grown geese? Do you want to play some Frisbee? If so, come hang out with the CSC
1878     at the EV3 Fire Pit this Friday!
1879     All are welcome for some outdoor fun, food, games, and music.
1880   </p>
1881   <p>
1882     If you have any questions or concerns, please contact exec@csclub.uwaterloo.ca.
1883   </p></abstract>
1884 </eventitem> -->
1885
1886 <eventitem date="2013-06-07" time="6:00 PM, 8:00PM" room="Comfy Lounge" title="Unix 101/ Code Party 0">
1887   <short><p>
1888     We are offering a Unix tutorial on Friday, June 7th, 2013! Following the tutorial a code party will take place.
1889     Bring your laptops and chargers for an awesome night of coding, hacking and learning.
1890     All are welcome to join in the comfy lounge!
1891   </p></short>
1892   <abstract>
1893     <p>We are offering a Unix tutorial on Friday, June 7th, 2013 at 6:00pm! Following the tutorial a code party will take place.
1894     Bring your laptops and chargers for an awesome night of coding, hacking and learning.
1895     All are welcome to join in the comfy lounge!</p>
1896
1897     <p>If you have any questions about Unix101/ Code Party 0 please contact exec@csclub.uwaterloo.ca. </p>
1898
1899     <p>Hope to see you there!</p>
1900   </abstract>
1901 </eventitem>
1902
1903 <eventitem date="2013-05-15" time="6:00 PM" room="Comfy Lounge" title="Spring 2013 Elections">
1904   <short><p>
1905      Elections for Spring 2013 are being held! The Executive will be elected,
1906      and the Office Manager and Librarian will be appointed by the new
1907      executive.
1908   </p></short>
1909   <abstract>
1910     <p>It's elections time again! On Wednesday, May 15 at 6:00PM, come to the Comfy Lounge
1911     on the 3rd floor of the MC to vote in this term's President, Vice-President, Treasurer
1912     and Secretary. The Sysadmin, Librarian, and Office Manager will also be chosen at this time.</p>
1913
1914     <p>Nominations are open until 4:30PM on Tuesday, May 14, and can be written
1915     on the CSC office whiteboard (yes, you can nominate yourself). Full CSC
1916     members can vote and are invited to drop by. You may also send nominations to
1917     the <a href="mailto:cro@csclub.uwaterloo.ca"> Chief Returning Officer</a>. A
1918     full list of candidates will be posted when nominations close, along with
1919     instructions for voting remotely.</p>
1920
1921     <p>Good luck to our candidates!</p>
1922   </abstract>
1923 </eventitem>
1924
1925 <!-- Winter 2013 -->
1926 <eventitem date="2013-04-01" time="7:00 PM" room="Comfy Lounge" title="Code Party 1">
1927         <short>
1928 <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>
1929         </short>
1930         <abstract>
1931 <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>
1932         </abstract>
1933 </eventitem>
1934
1935 <eventitem date="2013-04-01" time="6:00 PM" room="MC 3003" title="Unix 101">
1936         <short>
1937 <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>
1938         </short>
1939         <abstract>
1940 <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>
1941 <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>
1942         </abstract>
1943 </eventitem>
1944
1945 <eventitem date="2013-03-21" time="4:30 PM" room="MC 4020" title="Using Computers to Find Evidence in Litigation">
1946     <short>
1947 <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>
1948     </short>
1949     <abstract>
1950 <p>In a lawsuit, each party is typically entitled to Discovery, in which the
1951 other party is compelled to produce any "documents" in its possession that
1952 may be pertinent to the case.   Documents include not only traditional
1953 paper documents, but email messages, text messages, computer files, and
1954 other electronically stored information, or ESI.  Suppose you were
1955 compelled to produce every document in your possession pertaining to
1956 software downloads or purchases?  How would you do it?   If you were a
1957 large corporation, you would probably hire an army of lawyers to read all
1958 your email, plus your assignments, and any other files on your UW account,
1959 your laptop, your phone, and your tablet, at a cost of one dollar or more
1960 per file.  As a CSC member, you know there must be a better way.  But what
1961 is that better way, and how do you convince the court to let you use it?</p>
1962 <p>It turns out that spam filters that employ machine learning can do this job
1963 well -- better than that army of lawyers.  But lawyers aren't happy about
1964 this.  This talk will outline how the technology works and how to prove
1965 that it works, so as to convince scientists, lawyers, and judges.</p>
1966     </abstract>
1967 </eventitem>
1968
1969 <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">
1970     <short>
1971     <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>
1972     </short>
1973     <abstract>
1974 <p>High-level languages insulate the programmer from the machine. That's a
1975 wonderful thing -- except when it obscures the answers to the fundamental
1976 questions of "What does the program do?" and "How much does it cost?"</p>
1977 <p>The C++ and C# programmer is less insulated than most, and still we find
1978 that programmers are consistently surprised at what simple code actually
1979 does and how expensive it can be -- not because of any complexity of a
1980 language, but because of being unaware of the complexity of the machine on
1981 which the program actually runs.</p>
1982 <p>This talk examines the "real meanings" and "true costs" of the code we
1983 write and run especially on commodity and server systems, by delving into
1984 the performance effects of bandwidth vs. latency limitations, the
1985 ever-deepening memory hierarchy, the changing costs arising from the
1986 hardware concurrency explosion, memory model effects all the way from the
1987 compiler to the CPU to the chipset to the cache, and more -- and what you
1988 can do about them.</p>
1989     </abstract>
1990 </eventitem>
1991
1992 <eventitem date="2013-01-16" time="4:00 PM" room="Comfy Lounge" title="Elections">
1993     <short>
1994     <p>CSC Elections have begun for the Winter 2013 term, nominations are open!</p>
1995     </short>
1996     <abstract>
1997 <p>It's elections time again! On Wednesday January 16th at 4:00PM, come to the Comfy Lounge
1998 on the 3rd floor of the MC to vote in this term's President, Vice-President, Treasurer
1999 and Secretary. The sysadmin, librarian, and office manager will also be chosen at this time.</p>
2000
2001 <p>Nominations are open until 4:00PM on Tuesday January 15th, and can be
2002 written on the CSC office whiteboard (yes, you can nominate yourself). All CSC members
2003 can vote and are invited to drop by. You may also send nominations to the
2004 <a href="mailto:cro@csclub.uwaterloo.ca">
2005    Chief Returning Officer</a>. A full list of candidates will be posted
2006    when nominations close.</p>
2007
2008     <p>Good luck to our candidates!</p>
2009     </abstract>
2010 </eventitem>
2011
2012 <!-- Fall 2012 -->
2013
2014 <eventitem date="2012-11-23" time="19:00" room="MC 3001" title="Code Party 3">
2015         <short>
2016                 <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>
2017         </short>
2018         <abstract>
2019                 <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>
2020         </abstract>
2021 </eventitem>
2022
2023 <eventitem date="2012-11-21" time="4:30 PM" room="MC 5136B" title="SASMS">
2024    <short>
2025       <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>
2026    </short>
2027    <abstract>
2028       <p>The Pure Mathematics, Applied Mathematics, Combinatorics &amp; Optimization Club is hosting the Fall 2012 Short Attention Span Math Seminars (SASMS).</p>
2029       <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>
2030    </abstract>
2031 </eventitem>
2032
2033 <eventitem date="2012-11-19" time="3:30 PM" room="MC 3003" title="UNIX 101">
2034   <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>
2035   <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>
2036 <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>
2037 </abstract>
2038 </eventitem>
2039
2040 <eventitem date="2012-11-15" time="7:00 PM" room="DC 1302" title="KW Perlmongers Talk">
2041    <short>
2042       <p><i>by Justin Wheeler.</i>In his own words, this talk will cover the virtues
2043       of Perl: CPAN, Moose, CPAN, Catalyst, CPAN, DBIx::Class, CPAN,
2044       TMTOWTDI, and did I mention CPAN?</p>
2045    </short>
2046    <abstract>
2047       <p>In his own words, this talk will cover the virtues
2048       of Perl: CPAN, Moose, CPAN, Catalyst, CPAN, DBIx::Class, CPAN,
2049       TMTOWTDI, and did I mention CPAN?</p>
2050       <p>If you've never used Perl before, don't be scared away by the
2051       jargon&mdash;the talk should be accessible to all CS students, and even if
2052       you find it hard to follow, we will be serving pizza!      </p>
2053    </abstract>
2054 </eventitem>
2055
2056 <eventitem date="2012-10-26" time="7:00 PM" room="MC 3001" title="CSC Code
2057 Party 2">
2058    <short>
2059       <p>We will be holding our second code party of the term. Watch for
2060          further details, as we plan on working with some robots and Scala,
2061          git, and Haskell.</p>
2062    </short>
2063    <abstract>
2064       <p>We will be holding our second code party of the term. Watch for
2065          further details, as we plan on working with some robots and Scala,
2066          git, and Haskell.</p>
2067    </abstract>
2068 </eventitem>
2069
2070 <eventitem date="2012-10-18" time="4:00 PM" room="MC 2034" title="The
2071 Cryptographic and Game-Theoretical Fundamentals behind Bitcoin">
2072    <short>
2073       <p><i>by Vitalik Buterin.</i> In this talk, we will cover the
2074          cryptographic and game-theory principles behind the currency, including
2075          how the issues of double-spending, the "51% attack," and "mining" are
2076          addressed, the game-theory incentives to use Bitcoins honestly, and
2077          other issues being faced today in practice, such as implementation,
2078          attacks, and future scalability.</p>
2079         </short>
2080         <abstract>
2081                 <p><i>by Vitalik Buterin.</i> Interested in learning more about Bitcoin,
2082          the independent digital cryptographic cash? Then this is the talk for
2083          you!</p>
2084
2085       <p>In his talk, Vitalik will cover the cryptographic and game-theory
2086          principles behind the currency, including how the issues of
2087          double-spending, the "51% attack," and "mining" are addressed, the
2088          game-theory incentives to use Bitcoins honestly, and other issues being
2089          faced today in practice, such as implementation, attacks, and future
2090          scalability.</p>
2091
2092       <p>Refreshments will be provided.</p>
2093         </abstract>
2094 </eventitem>
2095
2096 <eventitem date="2012-09-28" time="7:00 PM" room="PHY 150" title="Tron Screening: Frosh-A-Tron">
2097         <short>
2098                 <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>
2099         </short>
2100         <abstract>
2101                 <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>
2102         </abstract>
2103 </eventitem>
2104
2105 <eventitem date="2012-09-14" time="19:00" room="MC 3001" title="Code Party 1: FROSH-A-THON">
2106         <short>
2107                 <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>
2108         </short>
2109         <abstract>
2110                 <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>
2111         </abstract>
2112 </eventitem>
2113
2114 <eventitem date="2012-09-18" time="4:00 PM" room="Comfy Lounge" title="Elections">
2115     <short>
2116     <p>CSC Elections have begun for the Fall 2012 term, nominations are open!</p>
2117     </short>
2118     <abstract>
2119 <p>It's elections time again! On Tuesday September 18th at 4:00PM, come to the Comfy Lounge
2120 on the 3rd floor of the MC to vote in this term's President, Vice-President, Treasurer
2121 and Secretary. The sysadmin, librarian, and office manager will also be chosen at this time.</p>
2122
2123 <p>Nominations are open until 4:00PM on Monday September 17th, and can be
2124 written on the CSC office whiteboard (yes, you can nominate yourself). All CSC members
2125 can vote and are invited to drop by. You may also send nominations to the
2126 <a href="mailto:cro@csclub.uwaterloo.ca">
2127    Chief Returning Officer</a>. A full list of candidates will be posted
2128    when nominations close.</p>
2129
2130     <p>Good luck to our candidates!</p>
2131     </abstract>
2132 </eventitem>
2133
2134 <eventitem date="2012-09-06" time="17:00" room="Math 3 Atrium" title="SCS First-year Welcome Dinner">
2135         <short>
2136                 <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>
2137         </short>
2138         <abstract>
2139                 <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>
2140         </abstract>
2141 </eventitem>
2142
2143 <!-- Spring 2012 -->
2144
2145 <eventitem date="2012-06-08" time="19:00:00" room="MC 3001" title="Code Party 1">
2146         <short>
2147                 <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>
2148         </short>
2149         <abstract>
2150                 <p>             </p>
2151                 <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>
2152         </abstract>
2153 </eventitem>
2154
2155 <eventitem date="2012-05-10" time="4:30 PM" room="Comfy Lounge" title="Elections">
2156     <short>
2157     <p>CSC Elections have begun for the Spring 2012 term, nominations are open!</p>
2158     </short>
2159     <abstract>
2160 <p>It's elections time again! On Thursday May 10th at 4:30PM, come to the Comfy Lounge
2161 on the 3rd floor of the MC to vote in this term's President, Vice-President, Treasurer
2162 and Secretary. The sysadmin, librarian, and office manager will also be chosen at this time.</p>
2163
2164 <p>Nominations are open until 4:30PM on Wednesday May 9th, and can be
2165 written on the CSC office whiteboard (yes, you can nominate yourself). All CSC members
2166 who have paid their Mathsoc fee can vote and are invited to drop by.
2167 You may also send nominations to the <a href="mailto:cro@csclub.uwaterloo.ca">
2168    Chief Returning Officer</a>. A full list of candidates will be posted
2169    when nominations close.</p>
2170
2171     <p>Good luck to our candidates!</p>
2172     </abstract>
2173 </eventitem>
2174
2175 <eventitem date="2012-05-07" time="6:00 PM" room="DC 1302" title="mmap and the Mortgage Crisis">
2176     <short>
2177     <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>
2178     </short>
2179     <abstract>
2180 <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>
2181
2182 <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>
2183     </abstract>
2184 </eventitem>
2185
2186
2187 <!-- Winter 2012 -->
2188
2189 <eventitem date="2012-03-22" time="4:30 PM" room="MC 4021" title="Multi-processor Real-time Systems">
2190   <short>
2191     <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>
2192   </short>
2193   <abstract>
2194     <p>
2195       Programming systems that obey hard real-time constraints is difficult. So is programming multiple CPUs that interact to solve a single problem.
2196     </p>
2197     <p>
2198       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.
2199     </p>
2200     <p>
2201       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.
2202     </p>
2203     <p>
2204       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.
2205     </p>
2206   </abstract>
2207 </eventitem>
2208
2209 <eventitem date="2012-03-08" time="5:30 PM" room="MC 3003" title="UNIX 102">
2210   <short>
2211     <p><i>by Calum T. Dalek</i>. The Computer Science Club will be running the
2212 second installment of our introductory UNIX tutorials for the term. We
2213 will be covering topics intended to show off the development-friendliness of
2214 the UNIX computing environment: "real" document editors, development tools,
2215 bash scripting, and version control.
2216     </p>
2217   </short>
2218   <abstract>
2219     <p>New to the UNIX computing environment? If you seek an introduction, look
2220 no further. We will be covering more advanced topics in the second installment
2221 of our introductory tutorials, that will help you become a more effective
2222 developer.
2223     </p>
2224     <p>We will be introducing "real" document editors, bash scripting, and
2225 version control. We'll prove to you how much more efficient you can develop
2226 with these tools and teach you how to do it for yourself. It will save you hours
2227 of work!
2228     </p>
2229   </abstract>
2230 </eventitem>
2231
2232 <eventitem date="2012-03-02" time="7:00 PM" room="MC 3001" title="OpenCL Code Party">
2233   <short>
2234     <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.
2235     </p>
2236   </short>
2237   <abstract>
2238     <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.
2239     </p>
2240   </abstract>
2241 </eventitem>
2242
2243 <eventitem date="2012-03-07" time="5:30 PM" room="PHY 150" title="Feynman Messenger Lecture Series">
2244   <short>
2245     <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!
2246     </p>
2247   </short>
2248   <abstract>
2249     <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>
2250     <ul>
2251       <li><b>Feb. 29, 5:30-6:30 PM:</b> <i>Law of Gravitation: An Example of Physical Law</i></li>
2252       <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>
2253       <li><b>Mar. 14, 5:30-6:30 PM:</b> <i>Symmetry in Physical Law</i></li>
2254       <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>
2255       <li><b>Mar. 28, 5:30-6:30 PM:</b> <i>Seeking New Laws</i></li>
2256     </ul>
2257     <p>Dinner will be provided, so come on out, relax in the comfy PHY 150 theatre, and enjoy. Hope to see you there!</p>
2258   </abstract>
2259 </eventitem>
2260
2261 <eventitem date="2012-02-16" time="7:00 PM" room="MC 3001" title="OpenCL Introduction">
2262   <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>
2263   <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>
2264 <p></p>
2265 </abstract>
2266 </eventitem>
2267
2268 <eventitem date="2012-02-09" time="5:00 PM" room="MC 3003" title="UNIX 101">
2269   <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>
2270   <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>
2271 <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>
2272 </abstract>
2273 </eventitem>
2274
2275 <eventitem date="2012-02-07" time="6:00 PM" room="MC 4045" title="Algorithms Talk">
2276   <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>
2277   <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>
2278
2279 <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>
2280 </eventitem>
2281
2282 <eventitem date="2012-01-27" time="6:30 PM" room="Math CnD" title="Code Party 0">
2283   <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>
2284   <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>
2285 </eventitem>
2286
2287 <eventitem date="2012-01-12" time="4:30 PM" room="Comfy Lounge" title="Elections">
2288     <short>
2289     <p>CSC Elections have begun for the Winter 2012 term, nominations are open!</p>
2290     </short>
2291     <abstract>
2292 <p>It's elections time again! On Thursday January 12th at 4:30PM, come to the Comfy Lounge
2293 on the 3rd floor of the MC to vote in this term's President, Vice-President, Treasurer
2294 and Secretary. The sysadmin, librarian and office manager will also be chosen at this time.</p>
2295
2296 <p>Nominations are open until 4:30PM on Wednesday January 11th, and can be
2297 written on the CSC office whiteboard (yes, you can nominate yourself). All CSC members
2298 who have paid their Mathsoc fee can vote and are invited to drop by.
2299 You may also send nominations to the <a href="mailto:cro@csclub.uwaterloo.ca">
2300    Chief Returning Officer</a>. A full list of candidates will be posted
2301    when nominations close.</p>
2302
2303     <p>Good luck to our candidates!</p>
2304     </abstract>
2305 </eventitem>
2306
2307 <!-- Fall 2011 -->
2308 <eventitem date="2011-11-18" time="7:00 PM" room="Comfy Lounge" title="CSC Open Data Code Party">
2309   <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>
2310   <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>
2311
2312     <p>As always, you're welcome to work on your own projects, but we'll be hacking on some open data related projects:
2313       <ol>
2314         <li>Design and build UW APIs.</li>
2315         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.
2316         <li>Applications using university data that is currently available.</li>
2317       </ol>
2318      </p>
2319      <p>If you'd like to discuss your ideas for these proposed projects, check out the newsgroup, uw.csc</p></abstract>
2320 </eventitem>
2321
2322 <eventitem date="2011-11-12" time="7:30 AM" room="Davis Centre" title="CSC goes to Design Our Tomorrow">
2323
2324     <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>
2325
2326     <abstract><p>
2327 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>
2328
2329 <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>
2330
2331 <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>
2332
2333 <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>
2334
2335 <p>We hope that you will join us.
2336 </p></abstract>
2337
2338 </eventitem>
2339 <eventitem date="2011-10-24" time="4:30 PM" room="MC 3003" title="UNIX 102: Tools in the UNIX Environment">
2340
2341     <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.
2342 </p></short>
2343
2344     <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>
2345
2346 </eventitem>
2347 <eventitem date="2011-10-21" time="7 PM" room="Comfy Lounge" title="Code Party 2">
2348         <short>
2349                 <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>
2350         </short>
2351         <abstract>
2352                 <p>
2353                  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.
2354                 </p>
2355
2356                 <p>
2357                 There will be 3 more code parties this term.
2358                 </p>
2359         </abstract>
2360 </eventitem>
2361 <eventitem date="2011-10-13" time="6:30 PM" room="MC 4020" title="How Browsers Work">
2362         <short>
2363                 <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>
2364         </short>
2365         <abstract>
2366                 <p>
2367 Web browsers have evolved. From their humble beginnings as simple HTML
2368 rendering engines they have grown and evolved into rich application
2369 platforms. This talk will start with the fundamentals: how a browser
2370 creates an on-screen representation of the resources downloaded from
2371 the network. (Boring, right? But we have to start somewhere.) From
2372 there we'll get into the really exciting stuff: the latest innovations
2373 in Web browsers and how those innovations enable — even encourage —
2374 developers to build more complex applications than ever before. You'll
2375 see real-world examples of people building technologies on top of
2376 these "simple rendering engines" that seemed impossible a short time
2377 ago.
2378
2379 Bio of the speaker:
2380 Ehsan Akhgari has contributed to the Mozilla project for more than 5
2381 years.  He has worked on various parts of Firefox, including the user
2382 interface and the rendering engine.  He originally implemented Private
2383 Browsing in Firefox.  Right now he's focusing on the editor component
2384 in the Firefox engine.
2385                 </p>
2386
2387                 <p>
2388                 There will be 4 more code parties this term.
2389                 </p>
2390         </abstract>
2391 </eventitem>
2392 <eventitem date="2011-09-30" time="7 PM" room="Comfy Lounge" title="Code Party 1">
2393         <short>
2394                 <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>
2395         </short>
2396         <abstract>
2397                 <p>
2398                 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.
2399                 </p>
2400
2401                 <p>
2402                 There will be 4 more code parties this term.
2403                 </p>
2404         </abstract>
2405 </eventitem>
2406 <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">
2407         <short>
2408                 <p><i>by Calum T. Dalek</i>. New to Unix? No problem, we'll teach you to power use circles around your friends!</p>
2409         </short>
2410         <abstract>
2411                 <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>
2412         </abstract>
2413 </eventitem>
2414 <eventitem date="2011-09-19" edate="2011-09-19" time="4:30 PM" etime="5:30 PM" room="Comfy Lounge" title="Elections">
2415         <short>
2416                 <p>
2417                 Club elections. See related news items for details.
2418                 </p>
2419         </short>
2420         <abstract>
2421                 Club elections. See related news items for details.
2422         </abstract>
2423 </eventitem>
2424
2425 <!-- Spring 2011 -->
2426 <eventitem date="2011-07-29" time="6 PM" room="home of askhader, see abstract" title="CTRL-D">
2427         <short>
2428                 <p>
2429                 The end of another term is here, and so we're having our End-of-Term dinner.
2430
2431                 Everybody's welcome to come to CTRL-D. We are running this like a potluck, so bringing food is suggested.
2432                 </p>
2433         </short>
2434         <abstract>
2435                 <a href="http://csclub.uwaterloo.ca/~askhader/">askhader's</a> house is at: <br/>
2436                 9 Cardill Cresent<br/>
2437                 Waterloo, ON<br/>
2438         </abstract>
2439 </eventitem>
2440 <eventitem date="2011-07-22" time="7 PM" room="Comfy Lounge" title="Code Party 3">
2441         <short>
2442                 <p>
2443                         The final Code Party of the term is here!  Come hack on some code,
2444                         solve some puzzles, and have some fun. The event starts in the evening and will run
2445                         all night.  You can show up for any portion of it.  You should bring a laptop, and
2446                         probably have something in mind to work on, though you're welcome with neither.
2447                 </p>
2448                 <p>
2449                         Snacks will be provided.  Everyone is welcome.
2450                 </p>
2451                 <p>
2452                         Please note this date is postponed from the originally scheduled date due to
2453                         conflicts with <a href="http://www.kitchenerribandbeerfest.com/">Kitchener Ribfest &amp; Craft Beer Show</a>
2454                 </p>
2455         </short>
2456 </eventitem>
2457
2458 <eventitem date="2011-07-20" time="4:30 PM" room="MC 2038" title="An Introduction to Steganography">
2459         <short>
2460                 <p>
2461                         As part of the CSC member talks series, Yomna Nasser will be presenting an introduction to steganography.
2462                         Steganography is the act of hiding information such that it can only be found by its intended recipient.
2463                         It has been practiced since ancient Greece, and is still in use today.
2464                 </p>
2465                 <p>
2466                         This talk will include an introduction to the area, history, and some basic techniques for hiding information
2467                         and detecting hidden data.  There will be an overview of some of the mathematics involved, but nothing too
2468                         rigorous.
2469                 </p>
2470         </short>
2471 </eventitem>
2472
2473 <eventitem date="2011-07-09" time="4 PM to 10PM" room="Columbia Lake Firepit"
2474         title="CSC Goes Outside">
2475         <short> <p> Do you like going outside?  Are you
2476                         vitamin-D deficient from being in the MC too long?  Do you think
2477                         marshmallows, hotdogs, and fire are a delicious combination?  </p>
2478
2479                 <p> If so, you should join us as the CSC is going outside!  </p>
2480
2481                 <p> Around 4PM, we're going to Columbia Lake for some outdoor fun.
2482                         We'll have Frisbees, kites, snacks, and some drinks.  We'll be
2483                         sticking around until dusk, when we're going to have a campfire
2484                         with marshmallows and hotdogs.  We plan to be there until 10PM, but
2485                         of course you're welcome to come for any subinterval.  </p>
2486         </short>
2487 </eventitem>
2488 <eventitem date="2011-07-04" time="1:30 PM" room="MC 5158" title="Our Troubles with Linux and Why You Should Care">
2489         <short>
2490                 <p>
2491                 A joint work between Professors Tim Brecht, Ashif Harji, and
2492                 Peter Buhr, this talk describes experiences using the Linux
2493                 kernel as a platform for conducting performance evaluations.
2494                 </p>
2495         </short>
2496         <abstract>
2497                 <p>
2498                 Linux provides researchers with a full-fledged operating system that is
2499                 widely used and open source. However, due to its complexity and rapid
2500                 development, care should be exercised when using Linux for performance
2501                 experiments, especially in systems research. The size and continual
2502                 evolution of the Linux code-base makes it difficult to understand, and
2503                 as a result, decipher and explain the reasons for performance
2504                 improvements. In addition, the rapid kernel development cycle means
2505                 that experimental results can be viewed as out of date, or meaningless,
2506                 very quickly. We demonstrate that this viewpoint is incorrect because
2507                 kernel changes can and have introduced both bugs and performance
2508                 degradations.
2509                 </p>
2510                 <p>
2511                 This talk describes some of our experiences using the Linux kernel as a
2512                 platform for conducting performance evaluations and some performance
2513                 regressions we have found. Our results show, these performance
2514                 regressions can be serious (e.g., repeating identical experiments
2515                 results in large variability in results) and long lived despite having
2516                 a large negative impact on performance (one problem appears to have
2517                 existed for more than 3 years). Based on these experiences, we argue
2518                 that it is often reasonable to use an older kernel version,
2519                 experimental results need careful analysis to explain why a change in
2520                 performance occurs, and publishing papers that validate prior research
2521                 is essential.
2522                 </p>
2523                 <p>
2524                 This is joint work with Ashif Harji and Peter Buhr.
2525                 </p>
2526                 <p>
2527                 This talk will be about 20-25 minutes long with lots of time for
2528                 questions and discussion afterwards.
2529                 </p>
2530         </abstract>
2531 </eventitem>
2532 <eventitem date="2011-06-24" time="7 PM" room="Comfy Lounge" title="Code Party 2">
2533         <short>
2534                 <p>
2535                         The second Code Party of the term takes place this Friday!  Come hack on some code,
2536                         solve some puzzles, and have some fun. The event starts in the evening and will run
2537                         all night.  You can show up for any portion of it.  You should bring a laptop, and
2538                         probably have something in mind to work on, though you're welcome with neither.
2539                 </p>
2540                 <p>
2541                         Snacks will be provided.
2542                 </p>
2543         </short>
2544 </eventitem>
2545 <eventitem date="2011-06-14" time="4:30 PM" room="MC 2054" title="Taming Software Bloat with AdaptableGIMP">
2546         <short>
2547                 Ever use software with 100s or 1000s of commands? Ever have a hard time
2548                 finding the right commands to perform your task? In this talk, we'll
2549                 present AdaptableGIMP, a new version of GIMP developed at Waterloo to
2550                 help simplify complex user interfaces.
2551         </short>
2552         <abstract>
2553                 <p>
2554                         Ever use software with 100s or 1000s of commands? Ever have a hard time
2555                         finding the right commands to perform your task? We have. And we have
2556                         some new ideas on how to deal with software bloat.
2557                 </p>
2558                 <p>
2559                         In this talk, we'll present AdaptableGIMP, a new version of GIMP
2560                         developed by the HCI Lab here at the University of Watreloo.
2561                         AdaptableGIMP introduces the notion of crowdsourced interface
2562                         customizations: Any user of the application can customize the interface
2563                         for performing a particular task, with that customization instantly
2564                         shared with all other users through a wiki at adaptablegimp.org. In the
2565                         talk, we'll demo this new version of GIMP and show how it can help
2566                         people work faster by simplifying feature-rich, complex user
2567                         interfaces.
2568                 </p>
2569         </abstract>
2570 </eventitem>
2571 <eventitem date="2011-06-09" time="4:30 PM" room="MC 2054"
2572         title="General Purpose Computing on Graphics Cards">
2573         <short>
2574                 In the first of our member talks for the term, Katie Hyatt will give a
2575                 short introduction to General Purpose Graphics Processing Unit
2576                 computing.  This expanding field has many applications. The primary
2577                 focus of this talk will be nVidia's CUDA architecture.
2578         </short>
2579         <abstract>
2580                 <p> This is the first of our member talks for the term, presented by
2581                         CSC member and Waterloo undergraduate student Katie Hyatt
2582                 </p>
2583                 <p>
2584                         GPGPU (general purpose graphics processing unit) computing is an
2585                         expanding area of interest, with applications in physics, chemistry,
2586                         applied math, finance, and other fields. nVidia has created an
2587                         architecture named CUDA to allow programmers to use graphics cards
2588                         without having to write PTX assembly or understand OpenGL. CUDA is
2589                         designed to allow for high-performance parallel computation controlled
2590                         from the CPU while granting the user fine control over the behaviour
2591                         and performance of the device.
2592                 </p>
2593
2594                 <p>
2595                         In this talk, I'll discuss the basics of nVidia's CUDA architecture
2596                         (with most emphasis on the CUDA C extensions), the GPGPU programming
2597                         environment, optimizing code written for the graphics card, algorithms
2598                         with noteworthy performance on GPU, libraries and tools available to
2599                         the GPGPU programmer, and some applications to condensed matter
2600                         physics. No physics background required!
2601                 </p>
2602         </abstract>
2603 </eventitem>
2604 <eventitem date="2011-06-03" time="7 PM" room="Comfy Lounge" title="Code Party 1">
2605         <short>
2606                 The Computer Science Club is having our first code party of the term.
2607                 The theme for this week's code party is personal projects. Come show us
2608                 what you've been working on! Of course, everybody is welcome, even if you
2609                 don't have a project.
2610         </short>
2611         <abstract>
2612                 The Computer Science Club is having our first code party of the term.
2613                 The theme for this week's code party is personal projects. Come show us
2614                 what you've been working on! Of course, everybody is welcome, even if you
2615                 don't have a project.
2616
2617                 Personal projects are a great way to flex your CS muscles, and learn interesting
2618                 and new things. Come out and have some fun!
2619
2620                 Two more are scheduled for later in the term.
2621         </abstract>
2622 </eventitem>
2623 <eventitem date="2011-05-09" time="5:31 PM" room="Comfy Lounge" title="Elections Nominees List">
2624     <short>
2625     <p>CSC Elections, final list of nominations for Spring 2011</p>
2626     </short>
2627     <abstract>
2628     <p>The nominations are:
2629     <ul>
2630     <li>President: jdonland, mimcpher, mthiffau</li>
2631     <li>Vice-President: jdonland, mimcpher</li>
2632     <li>Treasurer: akansong, kspaans</li>
2633     <li>Secretary: akansong, jdonland</li>
2634     </ul>
2635     </p>
2636     </abstract>
2637 </eventitem>
2638
2639 <eventitem date="2011-05-09" time="5:30 PM" room="Comfy Lounge" title="Elections">
2640     <short>
2641     <p>CSC Elections have begun for the Spring 2011 term, nominations are open!</p>
2642     </short>
2643     <abstract>
2644     <p>It's time to elect your CSC executive for the Spring 2011 term. The
2645        elections will be held on Monday May 9th at 5:30PM in the Comfy Lounge
2646        on the 3rd floor of the MC. Nominations can be sent to the Chief
2647        Returning Officer, <a href="mailto:cro@csclub.uwaterloo.ca">cro@csclub.uwaterloo.ca</a>.
2648        Nominations will be open until 4:30PM on Monday May 9th. You can also stop by the office in
2649        person to write your nominations on the white board.</p>
2650
2651     <p>The executive positions open for nomination are:
2652     <ul>
2653     <li>President</li>
2654     <li>Vice-President</li>
2655     <li>Treasurer</li>
2656     <li>Secretary</li>
2657     </ul>
2658        There are also numerous positions that will be appointed once the
2659        executive are elected including systems administrator, office manager,
2660        and librarian.</p>
2661
2662     <p>Everyone is encouraged to run if they are interested, regardless of
2663        program of study, age, or experience. If you can't make the election,
2664        that's OK too! You can give the CRO a statement to read on your
2665        behalf. If you can't make it or are out of town, your votes can be
2666        sent to the CRO in advance of the elections. For the list of nominees,
2667        watch the CSC website, or ask the CRO.</p>
2668
2669     <p>Good luck to our candidates!</p>
2670     </abstract>
2671 </eventitem>
2672
2673 <!-- Winter 2011 -->
2674 <eventitem date="2011-03-17" time="04:30 PM" room="MC2034" title="Software Patents">
2675
2676     <short><p><i>by Stanley Khaing</i>. What are the requirements for obtaining a patent? Should software be patentable?</p></short>
2677
2678 <abstract>
2679         <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>
2680         <ul>
2681         <li>What are the requirements for obtaining a patent?</li>
2682         <li>Should software be patentable?</li>
2683         </ul>
2684 </abstract>
2685
2686 </eventitem>
2687
2688 <eventitem date="2011-02-17" time="07:00 PM" room="MC2017" title="A Smorgasbord of Perl Talks">
2689
2690     <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>
2691
2692 <abstract>
2693         <p>Tyler Slijboom will present:</p>
2694
2695         <ul>
2696         <li>Prototyping in Perl,</li>
2697         <li>Perl Default Variables,</li>
2698         <li>HOWTO on OO Programming, and</li>
2699         <li>HOWTO on Installing and Using Modules from CPAN</li>
2700         </ul>
2701
2702         <p>Daniel Allen will present:</p>
2703
2704         <ul>
2705         <li>Coping with Other Peoples' Code</li>
2706         </ul>
2707
2708         <p>Justin Wheeler will present:</p>
2709
2710         <ul>
2711         <li>Moose: a Modern Perl Framework</li>
2712         </ul>
2713 </abstract>
2714
2715 </eventitem>
2716
2717 <eventitem date="2011-02-09" time="04:30 PM" room="MC3003" title="UNIX 103: Version Control Systems">
2718
2719     <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.
2720 </p></short>
2721
2722     <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>
2723
2724 </eventitem>
2725
2726 <eventitem date="2011-02-04" time="07:00 PM" room="Comfy Lounge" title="Code Party">
2727
2728     <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>
2729
2730     <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>
2731
2732 </eventitem>
2733
2734 <eventitem date="2011-02-02" time="04:30 PM" room="MC3003" title="UNIX 102: Documents and Editing in the Unix environment">
2735
2736     <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.
2737 </p></short>
2738
2739     <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>
2740
2741 </eventitem>
2742
2743 <eventitem date="2011-01-26" time="04:30 PM" room="MC3003" title="UNIX 101: An Introduction to the Shell">
2744
2745     <short><p><i>by Calum T. Dalek</i>. New to Unix? No problem, we'll teach you to power use circles around your friends!
2746 </p></short>
2747
2748
2749     <abstract><p>This first tutorial is an introduction to the Unix shell environment, both on the student
2750 servers and on other Unix environments. Topics covered include: using the shell, both basic
2751 interaction and advanced topics like scripting and job control, the filesystem and manipulating
2752 it, and ssh. If you feel you're already familiar with these topics don't hesitate to come
2753 to Unix 102 to learn about documents, editing, and other related tasks, or watch out
2754 for Unix 103 and 104 that get much more in depth into power programming tools on Unix.
2755 </p></abstract>
2756
2757 </eventitem>
2758
2759
2760 <!-- Fall 2010 -->
2761 <eventitem date="2010-11-17" time="04:30 PM" room="MC4061" title="Mathematics and aesthetics in maze design">
2762
2763     <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.
2764 </p></short>
2765
2766
2767     <abstract><p>For thousands of years, mazes and labyrinths have played
2768 an important role in human culture and myth.  Today, solving
2769 mazes is a popular pastime, whether with pencil on paper
2770 or by navigating through a cornfield.
2771 </p><p>The construction of compelling mazes encompasses a variety of
2772 challenges in mathematics, algorithm design, and aesthetics.
2773 The maze should be visually attractive, but it should also be
2774 an engaging puzzle.  Master designers balance these two goals
2775 with wonderful results.
2776 </p><p>In this talk, I discuss the role of the computer in the process
2777 of designing mazes.  I present some well known algorithms for
2778 maze construction, and more recent research that attempts to
2779 novel mazes with non-trivial mathematical or aesthetic properties.
2780 </p></abstract>
2781
2782 </eventitem>
2783 <eventitem date="2010-11-13" time="12:00 PM" room="Outside DC" title="CSC Invades Toronto">
2784
2785     <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.
2786             If you would like to come along, please come by the office and sign up. The cost for the trip is $2 per member.
2787
2788         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
2789             board.</p></short>
2790
2791 </eventitem>
2792
2793 <eventitem date="2010-11-05" time="07:00 PM" room="CnD Lounge (MC3002)" title="Hackathon">
2794
2795     <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.
2796 </p></short>
2797
2798
2799     <abstract><p>Come join the CSC for a night of code, music with only 8 bits, and comradarie. We will be
2800 in the C&amp;D Lounge from 7pm until 7am working on personal projects, open source projects, and
2801 whatever else comes to mind. If you're interested in getting involved in free/open source development,
2802 some members will be on hand to guide you through the process.
2803 </p></abstract>
2804
2805 </eventitem>
2806
2807 <eventitem date="2010-10-26" time="04:30 PM" room="MC4040" title="Analysis of randomized algorithms via the probabilistic method">
2808
2809     <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.
2810 </p></short>
2811
2812
2813     <abstract><p>The probabilistic method is an extremely powerful tool in combinatorics that can be
2814 used to prove many surprising results.  The idea is the following: to prove that an
2815 object with a certain property exists, we define a distribution of possible objects
2816 and use show that, among objects in the distribution, the property holds with
2817 non-zero probability.  The key is that by using the tools and techniques of
2818 probability theory, we can vastly simplify proofs that would otherwise require very
2819 complicated combinatorial arguments.
2820 </p><p>As a technique, the probabilistic method developed rapidly during the latter half of
2821 the 20th century due to the efforts of mathematicians like Paul Erdős and increasing
2822 interest in the role of randomness in theoretical computer science.  In essence, the
2823 probabilistic method allows us to determine how good a randomized algorithm's output
2824 is likely to be.  Possibly applications range from graph property testing to
2825 computational geometry, circuit complexity theory, game theory, and even statistical
2826 physics.
2827 </p><p>In this talk, we will give a few examples that illustrate the basic method and show
2828 how it can be used to prove the existence of objects with desirable combinatorial
2829 properties as well as produce them in expected polynomial time via randomized
2830 algorithms.  Our main goal will be to present a very slick proof from 1995 due to
2831 Spencer on the performance of a randomized greedy algorithm for a set-packing
2832 problem.  Spencer, for seemingly no reason, introduces a time variable into his
2833 greedy algorithm and treats set-packing as a Poisson process.  Then, like magic,
2834 he is able to show that his greedy algorithm is very likely to produce a good
2835 result using basic properties of expected value.
2836 </p><p>Properties of Poisson and Binomial distributions will be applied, but I'll remind
2837 everyone of the needed background for the benefit of those who might be a bit rusty.
2838 Stat 230 will be more than enough. Big O notation will be used, but not excessively.
2839 </p></abstract>
2840
2841 </eventitem>
2842
2843 <eventitem date="2010-10-19" time="04:30 PM" room="RCH 306" title="Machine learning vs human learning - will scientists become obsolete?">
2844
2845     <short><p><i>by Dr. Shai Ben-David</i>.
2846 </p></short>
2847
2848
2849     <abstract><p>
2850 </p></abstract>
2851
2852 </eventitem>
2853
2854 <eventitem date="2010-10-13" time="04:30 PM" room="MC3003" title="UNIX 102">
2855
2856     <short><p>This installment in the CS Club's popular Unix tutorials UNIX 102 introduces powerful text editing tools for programming and document formatting.
2857 </p></short>
2858
2859
2860     <abstract><p>Unix 102 is a follow up to Unix 101, requiring basic knowledge of the shell.
2861 If you missed Unix101 but still know your way around you should be fine.
2862 Topics covered include: "real" editors, document typesetting with LaTeX
2863 (great for assignments!), bulk editing, spellchecking, and printing in the
2864 student environment and elsewhere.
2865 </p></abstract>
2866
2867 </eventitem>
2868 <eventitem date="2010-10-06" time="04:30 PM" room="MC3003" title="UNIX 103">
2869
2870     <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).
2871 </p></short>
2872
2873
2874     <abstract><p>Unix 103 will cover version control systems and how to use them to manage
2875 your projects. Unix 101 would be helpful, but all that is needed is basic
2876 knowledge of the Unix command line (how to enter commands).
2877 </p></abstract>
2878
2879 </eventitem>
2880
2881 <eventitem date="2010-10-12" time="04:30 PM" room="MC4061" title="How to build a brain: From single neurons to cognition">
2882
2883     <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.
2884 </p></short>
2885
2886
2887     <abstract><p><i>By Dr. Chris Eliasmith</i>. Theoretical neuroscience is a new discipline focused on constructing
2888 mathematical models of brain function.  It has made significant
2889 headway in understanding aspects of the neural code.  However,
2890 past work has largely focused on small numbers of neurons, and
2891 so the underlying representations are often simple. In this
2892 talk I demonstrate how the ideas underlying these simple forms of
2893 representation can underwrite a representational hierarchy that
2894 scales to support sophisticated, structure-sensitive
2895 representations.  I will present a general architecture, the semantic
2896 pointer architecture (SPA), which is built on this hierarchy
2897 and allows the manipulation, processing, and learning of structured
2898 representations in neurally realistic models.  I demonstrate the
2899 architecture on Progressive Raven's Matrices (RPM), a test of
2900 general fluid intelligence.
2901 </p></abstract>
2902
2903 </eventitem>
2904
2905 <eventitem date="2010-10-04" time="04:30 PM" room="MC4021" title="BareMetal OS">
2906
2907     <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.
2908 </p></short>
2909
2910
2911     <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,
2912 while applications can be written in Assembly or C/C++.
2913 High Performance Computing is the main target application.
2914 </p></abstract>
2915
2916 </eventitem>
2917
2918 <eventitem date="2010-09-28" time="04:30 PM" room="MC4061" title="A Brief Introduction to Video Encoding">
2919
2920     <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.
2921 </p></short>
2922
2923
2924     <abstract><p><i>By Peter Barfuss</i>. With the recent introduction of digital TV and the widespread success
2925 of video sharing websites such as youtube, it is clear that the task
2926 of lossily compressing video with good quality has become important.
2927 Similarly, the complex algorithms involved require high amounts of
2928 optimization in order to run fast, another important requirement for
2929 any video codec that aims to be widely used/adopted.
2930 </p><p>In this talk, I
2931 will go over the concepts used in video encoding (such as motion
2932 estimation/compensation, inter- and intra- frame prediction,
2933 quantization and entropy encoding), and then demonstrate these
2934 concepts and algorithms in use in the MPEG-2 and the H.264 video
2935 codecs. In addition, some clever optimization tricks using
2936 SIMD/vectorization will be covered, assuming sufficient time to cover
2937 these topics.
2938 </p></abstract>
2939
2940 </eventitem>
2941
2942 <eventitem date="2010-09-23" time="04:30 PM" room="DC1301 (The Fishbowl)" title="Calling all CS Frosh">
2943
2944     <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.
2945 </p></short>
2946
2947
2948     <abstract><p>Come meet and greet your professors, advisors, and the heads of the school.
2949 Talk to the CSC executive and other upper year students about CS at Waterloo.
2950 Free food and beverages will also be available, so there is really no excuse
2951 to miss this.
2952 </p></abstract>
2953
2954 </eventitem>
2955 <eventitem date="2010-09-29" time="04:30 PM" room="MC3003" title="Unix 101">
2956
2957     <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.
2958 </p></short>
2959
2960
2961     <abstract><p>Need to use the Unix environment for a course, want to overcome your fears of
2962 the command line, or just curious? Attend the first installment in the CSC's
2963 popular series of Unix tutorails to learn the basics of the shell and how to
2964 navigate the unix environment. By the end of the hands on workshop you will
2965 be able to work efficiently from the command line and power-use circles around
2966 your friends.
2967 </p></abstract>
2968
2969 </eventitem>
2970
2971 <eventitem date="2010-09-22" time="06:00 PM" room="MC4045" title="Cooking for Geeks">
2972
2973     <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.
2974 </p></short>
2975
2976
2977     <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.
2978 Jeff's book has been featured on NPR, BBC and his presentations have wowed audiences of hackers &amp; foodies alike.
2979 We're happy to have Jeff joining us for a hands on demonstration.
2980 </p><p>But you don't have to take our word for it... here's what Jeff has to say:
2981 </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
2982 about my just-released book. I'll talk about the food science behind what makes things yummy, giving you a quick
2983 primer on how to go into the kitchen and have a fun time turning out a good meal.
2984 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.
2985 </p><p>If you have a copy of the book, bring it! I’ll happily sign it.
2986 </p></abstract>
2987
2988 </eventitem>
2989 <eventitem date="2010-09-21" time="04:30 PM" room="MC4061" title="In the Beginning">
2990
2991     <short><p><b>by Dr. Prabhakar Ragde, Cheriton School of Computer Science</b>. I'll be workshopping some lecture ideas involving representations of
2992     numbers, specification of computation in  functional terms, reasoning about
2993     such specifications, and comparing the strengths and weaknesses of  different approaches.
2994 </p></short>
2995
2996
2997     <abstract><p>I'll be workshopping some lecture ideas involving representations
2998     of numbers, specification of computation in
2999     functional terms, reasoning about such specifications, and comparing the
3000     strengths and weaknesses of
3001     different approaches. No prior background is needed; the talk should be accessible
3002     to anyone attending
3003     the University of Waterloo and, I hope, interesting to both novices and experts.
3004 </p></abstract>
3005
3006 </eventitem>
3007 <eventitem date="2010-09-14" time="04:30 PM" room="Comfy Lounge" title="Elections">
3008   <short><p>Fall term executive elections and general meeting.</p></short>
3009 </eventitem>
3010
3011 <!-- Spring 2010 -->
3012
3013 <eventitem date="2010-07-20" time="04:30 PM" room="MC2066" title="The Incompressibility Method">
3014 <short>
3015 In this talk, we shall explore the incompressibility method---an interesting and
3016 extremely powerful framework for determining the average-case runtime of
3017 algorithms.  Within the right background knowledge, the heapsort question can be
3018 answered with an elegant 3-line proof.
3019 </short>
3020 <abstract>
3021 <p>Heapsort. It runs in $\Theta(n \log n)$ time in the worst case, and in $O(n)$
3022     time in the best case.  Do you think that heapsort runs faster than $O(n
3023     \log n)$ time on average?  Could it be possible that on most inputs,
3024     heapsort runs in $O(n)$ time, running more slowly only on a small fraction
3025     of inputs?</p>
3026 <p>Most students would say no. It "feels" intuitively obvious that heapsort
3027     should take the full $n \log n$ steps on most inputs.  However, proving this
3028     rigourously with probabilistic arguments turns out to be very difficult.
3029     Average case analysis of algorithms is one of those icky subjects that most
3030     students don't want to touch with a ten foot pole; why should it be so
3031     difficult if it is so intuitively obvious?</p>
3032 <p>In this talk, we shall explore the incompressibility method---an interesting
3033     and extremely powerful framework for determining the average-case runtime of
3034     algorithms.  Within the right background knowledge, the heapsort question
3035     can be answered with an elegant 3-line proof.</p>
3036 <p>The crucial fact is that an overwhelmingly large fraction of randomly
3037     generated objects are incompressible. We can show that the inputs to
3038     heapsort that run quickly correspond to inputs that can be compressed,
3039     thereby proving that heapsort can't run quickly on average.  Of course,
3040     "compressible" is something that must be rigourously defined, and for this
3041     we turn to the fascinating theory of Kolmogorov complexity.</p>
3042 <p>In this talk, we'll briefly discuss the proof of the incompressibility
3043     theorem and then see a number of applications.  We won't dwell too much on
3044     gruesome mathemtical details.  No specific background is required, but
3045     knowledge of some of the topics in CS240 will be helpful in understanding
3046     some of the applications.</p>
3047 </abstract>
3048 </eventitem>
3049
3050 <eventitem date="2010-07-13" time="04:30 PM" room="MC2066" title="Halftoning and Digital Art">
3051     <short><p>Edgar Bering will be giving a talk titled: Halftoning and Digital Art</p></short>
3052     <abstract><p>Halftoning is the process of simulating a continuous tone image
3053         with small dots or regions of one colour. Halftoned images may be seen
3054         in older newspapers with a speckled appearance, and to this day colour
3055         halftoning is used in printers to reproduce images. In this talk I will
3056         present various algorithmic approaches to halftoning, with an eye not
3057         toward exact image reproduction but non-photorealistic rendering and
3058         art. Included in the talk will be an introduction to digital paper
3059         cutting and a tutorial on how to use the CSC's paper cutter to render
3060         creations.
3061 </p></abstract>
3062 </eventitem>
3063
3064
3065 <eventitem date="2010-07-09" time="07:00 PM" room="MC Comfy" title="Code Party">
3066     <short><p>There is a CSC Code Party Friday starting at 7:00PM (1900)
3067             until we get bored (likely in the early in morning). Come out for
3068             fun hacking times.
3069     </p></short>
3070     <abstract><p>There is a CSC Code Party Friday starting at 7:00PM (1900)
3071             until we get bored (likely in the early in morning). Come out for
3072             fun hacking times.
3073     </p></abstract>
3074 </eventitem>
3075
3076 <eventitem date="2010-07-06" time="04:30 PM" room="MC2054" title="Dataflow Analysis">
3077   <short><p>Nomair Naeem, a P.H.D. Student at Waterloo, will be giving a talk about Dataflow Analysis</p></short>
3078   <abstract><p>
3079     After going through an introduction to Lattice Theory and a formal treatment to
3080     Dataflow Analysis Frameworks, we will take an in-depth view of the
3081     Interprocedural Finite Distributive Subset (IFDS) Algorithm which implements a
3082     fully context-sensitive, inter-procedural static dataflow analysis. Then, using
3083     a Variable Type Analysis as an example, I will outline recent extensions that we
3084     have made to open up the analysis to a larger variety of static analysis
3085     problems and making it more efficient.
3086     </p><p>
3087     The talk is self-contained and no prior knowledge of program analysis is
3088     necessary.
3089   </p></abstract>
3090 </eventitem>
3091
3092 <eventitem date="2010-06-22" time="04:30 PM" room="MC2066" title="Compiling To Combinators">
3093   <short><p>Professor Ragde will be giving the first of our Professor talks for the Spring 2010 term.</p></short>
3094   <abstract><p>
3095     Number theory was thought to be mathematically appealing but practically
3096     useless until the RSA encryption algorithm demonstrated its considerable
3097     utility. I'll outline how combinatory logic (dating back to 1920) has a
3098     similarly unexpected application to efficient and effective compilation,
3099     which directly catalyzed the development of lazy functional programming
3100     languages such as Haskell. The talk is self-contained; no prior knowledge
3101     of functional programming is necessary.
3102   </p></abstract>
3103 </eventitem>
3104
3105 <eventitem date="2010-05-25" time="05:00 PM" room="MC2066" title="Gerald Sussman">
3106   <short><p>Why Programming is a Good Medium for Expressing Poorly Understood and Sloppily Formulated Ideas</p></short>
3107   <abstract>Full details found <a href="http://csclub.uwaterloo.ca/misc/sussman/">here</a></abstract>
3108 </eventitem>
3109
3110 <eventitem date="2010-05-26" time="03:30 PM" room="MC5136" title="Gerald Sussman">
3111   <short><p>Public Reception</p></short>
3112   <abstract>Full details found <a href="http://csclub.uwaterloo.ca/misc/sussman/">here</a></abstract>
3113 </eventitem>
3114
3115 <eventitem date="2010-05-26" time="05:000PM" room="MC5158" title="Gerald Sussman">
3116   <short><p>The Art of the Propagator</p></short>
3117   <abstract>Full details found <a href="http://csclub.uwaterloo.ca/misc/sussman/">here</a></abstract>
3118 </eventitem>
3119
3120 <eventitem date="2010-05-11" time="05:30 PM" room="Comfy Lounge" title="Elections">
3121   <short><p>Spring term executive elections and general meeting.</p></short>
3122 </eventitem>
3123
3124 <!-- Winter 2010 -->
3125 <eventitem date="2010-04-06" time="04:30 PM" room="DC1304" title="Brush-Based Constructive Solid Geometry">
3126
3127     <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.
3128 </p></short>
3129
3130
3131     <abstract><p>For some would-be graphics programmers, the biggest barrier-to-entry is getting data to render. This is why there exist so
3132 many terrain renderers: by virtue of the fact that rendering height-fields tends to give pretty pictures from next to no
3133 "created" information. However, it becomes more difficult when programmers want to do indoor rendering (in the style of the
3134 Quake and Unreal games). Ripping map information from the Quake games is possible (and fairly simple), but their tool-chain
3135 is fairly clumsy from the point of view of adding a conversion utility.
3136 </p><p>My talk is about Constructive Solid Geometry from a Brush-based perspective (nearly identical to Unreal's and still very similar
3137 to Quake's). The basic idea is that there are brushes (convex volumes in 3-space) and they can either be additive (solid brushes)
3138 or subtractive (hollow, or air brushes). The entire world starts off as an infinite solid lump and you can start removing sections
3139 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
3140 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.
3141 </p></abstract>
3142
3143 </eventitem>
3144 <eventitem date="2010-04-07" time="1:00 PM" room="MC2037" title="Windows Azure Lab">
3145
3146     <short><p>Get the opportunity to learn about Microsoft's Cloud Services Platform, Windows Azure.   Attend this Hands-on-lab session sponsored by Microsoft.
3147 </p></short>
3148
3149
3150     <abstract><p>We are in the midst of an industry shift as developers and businesses embrace the Cloud.
3151 Technical innovations in the cloud are dramatically changing the economics of computing
3152 and reducing barriers that keep businesses from meeting the increasing demands of
3153 today's customers.  The cloud promises choice and enables scenarios that previously
3154 were not economically practical.
3155 </p><p>Microsoft's Windows Azure is an internet-scale cloud computing services platform hosted
3156 in Microsoft data centers.  The Windows Azure platform, allows developers to build and
3157 deploy production ready cloud services and applications. With the Windows Azure platform,
3158 developers can take advantage of greater choice and flexibility in how they develop and
3159 deploy applications, while using familiar tools and programming languages.
3160 </p><p>Get the opportunity to learn about Microsoft's Cloud Services Platform, Windows Azure.
3161 Attend the Hands-on-lab session sponsored by Microsoft.
3162 </p></abstract>
3163
3164 </eventitem>
3165 <eventitem date="2010-04-01" time="6:30 PM" room="CSC Office" title="CTRL-D">
3166
3167     <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.
3168 </p></short>
3169
3170
3171     <abstract><p>Once again the CSC will be holding its traditional end of term dinner. It will
3172 be at the Vice President's house. If you don't know how to get there meet
3173 at the club office at 6:30 PM, a group will be leaving from the MC then. The
3174 dinner will be potluck style so bring a dish for 4-6 people, or some plates
3175 or pop or something.
3176 </p></abstract>
3177
3178 </eventitem>
3179 <eventitem date="2010-03-30" time="4:30 PM" room="DC1304" title="NUI: The future of robotics and automated systems">
3180
3181     <short><p>Member Sam Pasupalak will present some of his ongoing work in Natural User Interfaces and Robotics in this sixth installment of CS10.
3182 </p></short>
3183
3184
3185     <abstract><p>Bill Gates in his article “A Robot in every home” in the Scientific American describes how the current
3186 robotics industry resembles the 1970’s of the Personal Computer Industry. In fact it is not just
3187 Microsoft which has already taken a step forward by starting the Microsoft Robotics studio, but robotics
3188 researchers around the world believe that robotics and automation systems are going to be ubiquitous in
3189 the next 10-20 years (similar to Mark Weiser’s analogy of Personal Computers 20 years ago). Natural User
3190 Interfaces (NUIs) are going to revolutionize the way we interact with computers, cellular phones, household
3191 appliances, automated systems in our daily lives. Just like the GUI made personal computing a reality,
3192 I believe natural user interfaces will do the same for robotics.
3193 </p><p>During the presentation I will be presenting my ongoing software project on natural user interfaces as well
3194 as sharing my goals for the future, one of which is to provide an NUI SDK and the other to provide a common
3195 Robotics OS for every hardware vendor that will enable people to make applications without worrying about
3196 underlying functionality. If time permits I would like to present a demo of my software prototype.
3197 </p></abstract>
3198
3199 </eventitem>
3200 <eventitem date="2010-03-26" time="7:00 PM" room="MC7001" title="A Final Party of Code">
3201
3202     <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.
3203 </p></short>
3204
3205
3206     <abstract><p>There is a CSC/CMC Code Party Friday starting at 7:00PM (1900) until we
3207 get bored (likely in the early in morning). Come out for fun hacking
3208 times, spreading Intertube memes (optional), hacking on open source projects,
3209 doing some computational math, and other
3210 general classiness. There will be free energy drinks for everyone's
3211 enjoyment. This is the last of the term so don't miss out.
3212 </p></abstract>
3213
3214 </eventitem>
3215 <eventitem date="2010-03-23" time="4:30 PM" room="MC5158" title="Memory-Corruption Security Holes: How to exploit, patch and prevent them.">
3216
3217     <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.
3218 </p></short>
3219
3220
3221     <abstract><p>Despite it being 2010, code is still being exploited due to
3222 stack overflows, a 40+ year old class of security vulnerabilities. In
3223 this talk, I will go over several common methods of program
3224 exploitation, both on the stack and on the heap, as well as going over
3225 some of the current mitigation techniques (i.e. stack canaries, ASLR,
3226 etc.) for these holes, and similarly, how some of these can be
3227 bypassed as well.
3228 </p></abstract>
3229
3230 </eventitem>
3231 <eventitem date="2010-03-19" time="7:00 PM" room="Comfy Lounge" title="Another Party of Code">
3232
3233     <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.
3234 </p></short>
3235
3236
3237     <abstract><p>There is a CSC Code Party Friday starting at 7:00PM (1900) until we
3238 get bored (likely in the early in morning). Come out for fun hacking
3239 times, spreading Intertube memes (optional), hacking on the OpenMoko,
3240 creating music mixes, and other
3241 general classiness. There will be free energy drinks for everyone's
3242 enjoyment.
3243 </p></abstract>
3244
3245 </eventitem>
3246 <eventitem date="2010-03-16" time="4:30 PM" room="MC5158" title="Approximation Hardness and the Unique Games Conjecture">
3247
3248     <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.
3249 </p></short>
3250
3251
3252     <abstract><p>The theory of NP-completeness suggests that some problems in CS are inherently hard—that is,
3253 there is likely no possible algorithm that can efficiently solve them.  Unfortunately, many of
3254 these problems are ones that people in the real world genuinely want to solve!  How depressing!
3255 What can one do when faced with a real-life industrial optimization problem whose solution may
3256 save millions of dollars but is probably impossible to determine without trillions of
3257 years of computation time?
3258 </p><p>One strategy is to be content with an approximate (but provably "almost ideal") solution, and from
3259 here arises the theory of approximation algorithms.  However, this theory also has a depressing side,
3260 as many well-known optimization problems have been shown to be provably hard to approximate well.
3261 </p><p>This talk shall focus on the depressing.  We will prove that various optimization problems (such as
3262 traveling salesman and max directed disjoint paths) are impossible to approximate well unless P=NP.
3263 These proofs are easy to understand and are REALLY COOL thanks to their use of very slick reductions.
3264 </p><p>We shall explore many NP-hard optimization problems and state the performance of the best known
3265 approximation algorithms and best known hardness results.  Tons of open problems will be mentioned,
3266 including the unique games conjecture, which, if proven true, implies the optimality of many of the
3267 best known approximation algorithms for NP-complete problems like MAX-CUT and INDEPENDENT SET.
3268 </p><p>I promise fun times and no gruesome math.  Basic knowledge of graph theory and computational
3269 complexity might help but is not required.
3270 </p></abstract>
3271
3272 </eventitem>
3273 <eventitem date="2010-03-12" time="7:00 PM" room="Comfy Lounge" title="A Party of Code">
3274
3275     <short><p>A fevered night of code, friends, fun, energy drinks, and the CSC.
3276 </p></short>
3277
3278
3279     <abstract><p>A fevered night of code, friends, fun, energy drinks, and the CSC.
3280 </p><p>Come join us for a night of coding. Get in touch with more experianced coders,
3281 advertize for/bug squash on your favourite open source project, write that personal
3282 project you were planning to do for a while but haven't found the time. Don't
3283 have any ideas but want to sit and hack? We can find something for you to do.
3284 </p></abstract>
3285
3286 </eventitem>
3287
3288 <eventitem date="2010-03-09" time="4:30 PM" room="DC1304" title="Software Transactional Memory and Using STM in Haskell">
3289
3290     <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.
3291 </p></short>
3292
3293
3294     <abstract><p>Concurrency is hard. Well maybe not hard, but it sure is annoying to get right. Even the
3295 simplest of synchronization tasks are hard to implement correctly when using synchronization
3296 primitives such as locks and semaphores.
3297 </p><p>In this talk we explore what Software Transactional Memory (STM) is, what problems STM solves,
3298 and how to use STM in Haskell. We explore a number of examples that show how easy STM is to use
3299 and how expressive Haskell can be. The goal of this talk is to convince attendees that STM is
3300 not only a viable synchronization solution, but superior to how synchronization is typically
3301 done today.
3302 </p></abstract>
3303
3304 </eventitem>
3305 <eventitem date="2010-03-06" time="5:00 PM" room="Waterloo Bowling Lanes" title="Bowling">
3306     <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
3307     some or all of the above</p></short>
3308 </eventitem>
3309
3310 <eventitem date="2010-03-02" time="4:30 PM" room="DC1304" title="QIP=PSPACE">
3311
3312     <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.
3313 </p></short>
3314
3315
3316     <abstract><p>The interactive proof system model of computation is a cornerstone of
3317 complexity theory, and its quantum computational variant has been
3318 studied in quantum complexity theory for the past decade.  In this
3319 talk I will discuss an exact characterization of the power of quantum
3320 interactive proof systems that I recently proved in collaboration with
3321 Rahul Jain, Zhengfeng Ji, and Sarvagya Upadhyay.  The characterization
3322 states that the collection of computational problems having quantum
3323 interactive proof systems consists precisely of those problems
3324 solvable with an ordinary classical computer using a polynomial amount
3325 of memory (or QIP = PSPACE in complexity-theoretic terminology).  This
3326 characterization implies the striking fact that quantum computing does
3327 not provide any increase in computational power over classical
3328 computing in the context of interactive proof systems.
3329 </p><p>I will not assume that the audience for this talk has any familiarity
3330 with either quantum computing or complexity theory; and to be true to
3331 the spirit of the interactive proof system model, I hope to make this
3332 talk as interactive as possible -- I will be happy to explain anything
3333 related to the talk that I can that people are interested in learning
3334 about.
3335 </p></abstract>
3336
3337 </eventitem>
3338 <eventitem date="2010-02-26" time="7:00 PM" room="CnD Lounge" title="Contest Closing">
3339     <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.
3340     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>
3341 </eventitem>
3342
3343 <eventitem date="2010-02-25" time="4:30 PM" room="DC1302" title="CSCF Town Hall">
3344
3345     <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.
3346 </p></short>
3347
3348
3349     <abstract><p>Come to a town hall style meeting with the managers of CSCF to discuss how
3350 to improve the undergraduate (student.cs) computing environment. Have gripes?
3351 Suggestions? Requests? Now is the time to voice them.
3352 </p><p>CSCF management (Bill Ince, Associate Director; Dave Gawley, Infrastructure Support;
3353 Dawn Keenan, User Support; Lawrence Folland, Research Support) will be at the
3354 meeting to listen to student concerns and suggestions.  Information gathered from
3355 the meeting will be summarized and taken to the CSCF advisory committee for
3356 discussion and planning.
3357 </p></abstract>
3358
3359 </eventitem>
3360
3361 <eventitem date="2010-02-23" time="04:30 PM" room="MC5136B" title="The Best Algorithms are Randomized Algorithms">
3362
3363     <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.
3364 </p></short>
3365
3366
3367     <abstract><p>For many problems, randomized algorithms are either the fastest algorithm or the simplest algorithm;
3368 sometimes they even provide the only known algorithm. Randomized algorithms have become so prevalent
3369 that deterministic algorithms could be viewed as a curious special case. In this talk I will describe
3370 some startling examples of randomized algorithms for solving some optimization problems on graphs.
3371 </p></abstract>
3372
3373 </eventitem>
3374
3375 <eventitem date="2010-02-09" time="4:30 PM" room="DC1304" title="An Introduction to Vector Graphics Libraries with Cairo">
3376
3377     <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.
3378 </p></short>
3379
3380
3381     <abstract><p>Cairo is an open source, cross platform, vector graphics library with the ability to
3382 output to many kinds of surfaces, including PDF, SVG and PNG surfaces, as well as
3383 X-Window, Win32 and Quartz 2D backends. Unlike the raster graphics used with programmes
3384 and libraries such as The Gimp and ImageMagick, vector graphics are not defined by grids
3385 of pixels, but rather by a collection of drawing operations. These operations detail how to
3386 draw lines, fill shapes, and even set text to create the desired image. This has the
3387 advantages of being infinitely scalable, smaller in file size, and simpler to express within
3388 a computer programme. This talk will be an introduction to the concepts and metaphors used
3389 by vector graphics libraries in general and Cairo in particular.
3390 </p></abstract>
3391
3392 </eventitem>
3393
3394 <eventitem date="2010-02-11" time="4:30 PM" room="MC3005" title="UNIX 101 Encore">
3395
3396     <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.
3397 </p></short>
3398
3399
3400     <abstract><p>New to Unix? No problem, we'll teach you to power use circles around your friends!
3401 The popular tutorial returns for a second session, in case you missed the first one.
3402 </p><p>This first tutorial is an introduction to the Unix shell environment, both on the student
3403 servers and on other Unix environments. Topics covered include: using the shell, both basic
3404 interaction and advanced topics like scripting and job control, the filesystem and manipulating
3405 it, and ssh. If you feel you're already familiar with these topics don't hesitate to come
3406 to Unix 102 to learn about documents, editing, and other related tasks, or watch out
3407 for Unix 103 and 104 that get much more in depth into power programming tools on Unix.
3408 </p></abstract>
3409
3410 </eventitem>
3411 <eventitem date="2010-02-10" time="4:30 PM" room="MC3003" title="UNIX 101">
3412
3413     <short><p>New to Unix? No problem, we'll teach you to power use circles around your friends!
3414 </p></short>
3415
3416
3417     <abstract><p>New to Unix? No problem, we'll teach you to power use circles around your friends!
3418 </p><p>This first tutorial is an introduction to the Unix shell environment, both on the student
3419 servers and on other Unix environments. Topics covered include: using the shell, both basic
3420 interaction and advanced topics like scripting and job control, the filesystem and manipulating
3421 it, and ssh. If you feel you're already familiar with these topics don't hesitate to come
3422 to Unix 102 to learn about documents, editing, and other related tasks, or watch out
3423 for Unix 103 and 104 that get much more in depth into power programming tools on Unix.
3424 </p></abstract>
3425
3426 </eventitem>
3427 <eventitem date="2010-01-18" time="15:30 PM" room="MC2066" title="Wilderness Programming">
3428
3429     <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.
3430 </p></short>
3431
3432
3433     <abstract><p>Paul Lutus describes his early Apple II software development days, conducted
3434 from the far end of a 1200-foot power cord, in a tiny Oregon cabin. Paul
3435 describes how he wrote a best-seller (Apple Writer) in assembly language,
3436 while dealing with power outages, lightning storms and the occasional
3437 curious bear.
3438 </p><p>Paul also describes his subsequent four-year solo around-the-world sail in a
3439 31-foot boat. And be ready with your inquiries -- Paul will answer your
3440 questions.
3441 </p><p>Paul Lutus has a wide background in science and technology. He designed spacecraft
3442 components for the NASA Space Shuttle and created a mathematical model of the solar
3443 system used during the Viking Mars lander program. Then, at the beginning of the
3444 personal computer revolution, Lutus switched career paths and took up computer
3445 science. His best-known program is "Apple Writer," an internationally successful
3446 word processing program for the early Apple computers.
3447 </p></abstract>
3448
3449 </eventitem>
3450
3451 <eventitem date="2010-01-26" time="05:00 PM" room="DC1302" title="Deep learning with multiplicative interactions">
3452
3453     <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>.
3454 </p></short>
3455
3456
3457     <abstract><p>Deep networks can be learned efficiently from unlabeled data. The layers
3458 of representation are learned one at a time using a simple learning
3459 module, called a "Restricted Boltzmann Machine" that has only one layer
3460 of latent variables. The values of the latent variables of one
3461 module form the data for training the next module.  Although deep
3462 networks have been quite successful for tasks such as object
3463 recognition, information retrieval, and modeling motion capture data,
3464 the simple learning modules do not have multiplicative interactions which
3465 are very useful for some types of data.
3466 </p><p>The talk will show how a third-order energy function can be factorized to
3467 yield a simple learning module that retains advantageous properties of a
3468 Restricted Boltzmann Machine such as very simple exact inference and a
3469 very simple learning rule based on pair-wise statistics. The new module
3470 contains multiplicative interactions that are useful for a variety of
3471 unsupervised learning tasks. Researchers at the University of Toronto
3472 have been using this type of module to extract oriented energy from image
3473 patches and dense flow fields from image sequences. The new module can
3474 also be used to allow motions of a particular style to be achieved by
3475 blending autoregressive models of motion capture data.
3476 </p></abstract>
3477
3478 </eventitem>
3479
3480
3481 <!-- Fall 2009 -->
3482 <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">
3483     <short><p>Come on out to the club's termly end of term dinner, details in the abstract</p></short>
3484     <abstract><p>The dinner will be potluck style at the Vice President's house, please RSVP (respond swiftly to the vice president)
3485     <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
3486     office at 6:30 PM, a group will be leaving to lead you there.</p></abstract>
3487 </eventitem>
3488
3489 <eventitem date="2009-11-27" time="7:00 PM" room="Comfy Lounge" edate="2009-11-28" etime="7:00 AM" title="Code Party!!11!!">
3490
3491     <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.
3492 </p></short>
3493
3494
3495     <abstract><p>Come join us for a night of coding. Get in touch with more experianced coders,
3496 advertize for/bug squash on your favourite open source project, write that personal
3497 project you were planning to do for a while but haven't found the time. Don't
3498 have any ideas but want to sit and hack? Try your hand at the Facebook puzzles,
3499 write a new app, or just chill and watch scifi.
3500 </p></abstract>
3501
3502 </eventitem>
3503
3504 <eventitem date="2009-11-05" time="4:30 PM" room="MC2065" title="In the Beginning">
3505
3506     <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.
3507 </p></short>
3508
3509
3510     <abstract><p>To most CS students an OS kernel is pretty low level. But there is
3511 something even lower, the instructions that must be executed to get the
3512 CPU ready to accept a kernel.  That is, if you look at any processor's
3513 reference manual there is a page or two describing the state of the CPU
3514 when it powered on.  This talk describes what needs to happen next,
3515 up to the point where the first kernel instruction executes.
3516 </p><p>This part of execution is extremely architecture-dependent.  Those of
3517 you who have any experience with this aspect of CS probably know the x86
3518 architecture, and think it's horrible, which it is. I am going to talk
3519 about the ARM architecture, which is inside almost all mobile phones,
3520 and which allows us to look at a simple implementation that includes
3521 all the essentials.
3522 </p></abstract>
3523
3524 </eventitem>
3525
3526 <eventitem date="2009-10-20" time="04:30 PM" room="MC3036" title="CSC Goes To Dooly's">
3527
3528     <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.
3529 </p></short>
3530
3531
3532     <abstract><p>We're going to Dooly's to play pool. What more do you want from us?
3533 Come to the Club office and we'll all bus there together. We've got
3534 discount tables for club members so be sure to be there.
3535 </p></abstract>
3536
3537 </eventitem>
3538
3539 <eventitem date="2009-10-16" time="7:00 PM" room="Comfy Lounge" title="Code Party and Contest Finale">
3540
3541     <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.
3542 </p></short>
3543
3544
3545     <abstract><p>Come on out for a night of code, contests, and energy drinks. Join the Computer
3546 Scinece Club for the finale of the Google AI Challenge and an all night code party.
3547 Finish up your entry, or start it (its not too late). Not interested in the contest?
3548 Come out anyway for a night of coding and comradarie with us.
3549 </p><p>Included in the party will be the contest finale and awards cerimony, so if you've
3550 entered be sure to stick arround to collect the spoils of victory, or see just who
3551 that person you couldn't edge off is.
3552 </p></abstract>
3553
3554 </eventitem>
3555
3556 <eventitem date="2009-10-08" time="4:30 PM" room="MC3003" title="UNIX 103">
3557
3558     <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.
3559 </p></short>
3560
3561
3562     <abstract><p>In this long-awaited third installment of the popular Unix Tutorials the
3563 friendly experts of the CSC will teach you the simple art of version control.
3564 You will learn the purpose and use of two different Version Control Systems
3565 (git and subversion). This tutorial will advise you in the discipline of
3566 managing the source code of your projects and enable you to quickly learn new
3567 Version Control Systems in the work place -- a skill that is much sought after
3568 by employers.
3569 </p></abstract>
3570
3571 </eventitem>
3572
3573 <eventitem date="2009-10-14" time="2:30 PM" room="DC1304" title="UofT Graduate School Information Session">
3574     <short><p> "Is Graduate School for You?" Get the answers to your grad school questions - and have a bite to eat, our treat</p>
3575     </short>
3576     <abstract><p> Join Prof. Greg Wilson, faculty member in the Software Engineering research group in the UofT's Department of Computer Science,
3577     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
3578     be served. <b>Come see what grad school is all about!</b>. All undergraduate students are welcome; registration is not required.</p>
3579     <p>For any questions about the program, visit <a href="http://www.cs.toronto.edu/dcs/prospective-grad.html">UofT's website</a>. This
3580     event is not run by the CS Club, and is announced here for the benefit of our members.</p></abstract>
3581 </eventitem>
3582
3583 <eventitem date="2009-10-03" time="10:00 AM" edate="2009-10-03" etime="3:30 PM" room="DC1301 FishBowl" title="Linux Install Fest">
3584
3585     <short><p>Interested in trying Linux but don't know where to start?
3586     Come to the Linux install fest to demo Linux, get help installing it
3587     on your computer, either stand alone or a dual boot, and help setting
3588     up your fresh install. Have lunch and hang around if you like, or just come in for a CD.
3589 </p></short>
3590
3591
3592     <abstract><p>Interested in trying Linux but don't know where to start?
3593 Come to the Linux install fest to demo Linux, get help installing it on
3594 your computer, either stand alone or a dual boot, and help setting
3595 up your fresh install. Have lunch and hang around if you like, or just
3596 come in for a qick install.
3597 </p></abstract>
3598
3599 </eventitem>
3600
3601 <eventitem date="2009-10-01" time="4:30 PM" room="MC3003" title="UNIX 102">
3602
3603     <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.
3604 </p></short>
3605
3606
3607     <abstract><p>Unix 102 is a follow up to Unix 101, requiring basic knowledge of the shell.
3608 If you missed Unix101 but still know your way around you should be fine.
3609 Topics covered include: "real" editors, document typesetting with LaTeX
3610 (great for assignments!), bulk editing, spellchecking, and printing in the
3611 student environment and elsewhere.
3612 </p><p>If you aren't interested or feel comfortable with these taskes, watch out for
3613 Unix 103 and 104 to get more depth in power programming tools on Unix.
3614 </p></abstract>
3615
3616 </eventitem>
3617
3618 <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">
3619
3620     <short><p>Come learn how to write an intelligent game-playing program.
3621       No past experience necessary.  Submit your program using the <a href="http://csclub.uwaterloo.ca/contest/">online web interface</a>
3622       to watch it battle against other people's programs.   Beginners and experts welcome! Prizes provided by google,
3623       including the delivery of your resume to google recruiters.
3624 </p></short>
3625
3626
3627     <abstract><p>Come learn how to write an intelligent game-playing program.
3628         No past experience necessary.  Submit your program using the <a href="http://csclub.uwaterloo.ca/contest/">online
3629         web interface</a> to watch it battle against other people's programs.
3630         Beginners and experts welcome!
3631     </p><p>The contest is sponsored by Google, so be sure to compete for a chance
3632          to get noticed by them.
3633     </p><p>Prizes for the top programs:
3634    <ul><li>$100 in Cash Prizes</li>
3635        <li> Google t-shirts</li>
3636        <li>Fame and recognition</li>
3637        <li>Your resume directly to a Google recruiter</li>
3638    </ul>
3639 </p></abstract>
3640
3641 </eventitem>
3642 <eventitem date="2009-09-24" time="4:30 PM" room="MC3003" title="UNIX 101">
3643
3644     <short><p>
3645         New to Unix? No problem, we'll teach you to power use circles around your friends!
3646     </p></short>
3647
3648
3649     <abstract><p>
3650         New to Unix? No problem, we'll teach you to power use circles around your friends!
3651     </p><p>
3652         This first tutorial is an introduction to the Unix shell environment, both on the student
3653         servers and on other Unix environments. Topics covered include: using the shell, both basic
3654         interaction and advanced topics like scripting and job control, the filesystem and manipulating
3655         it, and ssh. If you feel you're already familiar with these topics don't hesitate to come
3656         to Unix 102 to learn about documents, editing, and other related tasks, or watch out
3657         for Unix 103 and 104 that get much more in depth into power programming tools on Unix.
3658     </p></abstract>
3659 </eventitem>
3660
3661 <eventitem date="2009-09-15" time="5:00PM" edate="2009-09-15" etime="6:00 PM"
3662        room="Comfy Lounge" title="Elections">
3663     <short><p>
3664      Nominations are open now, either place your name on the nominees board or
3665      e-mail <a href="mailto:cro@csclub.uwaterloo.ca">the CRO</a>
3666      to nominate someone for a position.
3667      Come to the Comfy Lounge to elect your fall term executive. Contact
3668      <a href="mailto:cro@csclub.uwaterloo.ca">the CRO</a> if you have questions.
3669     </p></short>
3670 </eventitem>
3671
3672
3673 <!-- Spring 2009 -->
3674 <eventitem date="2009-07-23" time="4:30 PM" edate="2009-07-23" etime="6:00 PM"
3675            room="MC 3003" title="Unix 103">
3676     <short><p>
3677      In this long-awaited third installment of the popular Unix Tutorials the dark
3678      mages of the CSC will train you in the not-so-arcane magick of version control.
3679      You will learn the purpose and use of two different Version Control Systems
3680      (git and subversion). This tutorial will advise you in the discipline of
3681      managing the source code of your projects and enable you to quickly learn new
3682      Version Control Systems in the work place -- a skill that is much sought after
3683      by employers.
3684     </p></short>
3685 </eventitem>
3686
3687 <eventitem date="2009-07-17" time="7:00 PM" edate="2009-07-18" etime="4:00 AM"
3688            room="MC 3001" title="Code Party">
3689     <short><p>
3690      Have an assignment or project you need to work on? We
3691      will be coding from 7:00pm until 4:00am starting on Friday, July 17th
3692      in the Comfy lounge. Join us!
3693     </p></short>
3694 </eventitem>
3695
3696 <eventitem date="2009-07-07" time="3:00 PM" etime="5:00 PM" room="DC 1302"
3697            title="History of CS Curriculum at UW">
3698     <short><p>
3699      This talk provides a personal overview of the evolution of the
3700      undergraduate computer science curriculum at UW over the past forty
3701      years, concluding with an audience discussion of possible future
3702      developments.
3703     </p></short>
3704 </eventitem>
3705
3706 <eventitem date="2009-06-22" time="4:30 PM" etime="6:30 PM" room="MC 4041"
3707            title="Paper Club">
3708     <short><p> Come and drink tea and read an academic CS paper with
3709      the Paper Club.  We will be meeting from 4:30pm until 6:30pm on
3710      Monday, June 22th on the 4th floor of the MC (exact room number
3711      TBA).  See http://csclub.uwaterloo.ca/~paper
3712     </p></short>
3713 </eventitem>
3714
3715 <eventitem date="2009-06-19" time="5:30 PM" room="Dooly's" title="Dooly's Night">
3716     <short><p>
3717     The CSC will be playing pool at Dooly's. Join us for only a few dollars.
3718     </p></short>
3719 </eventitem>
3720
3721 <eventitem date="2009-06-05" time="7:00 PM" edate="2009-06-06" etime="4:00 AM"
3722            room="MC 3001" title="Code Party">
3723     <short><p>
3724      Have an assignment or project you need to work on? We
3725      will be coding from 7:00pm until 7:00am starting on Friday, June 5th
3726      in the Comfy lounge. Join us!
3727     </p></short>
3728 </eventitem>
3729
3730 <eventitem date="2009-06-02" time="4:30 PM" room="MC 2037" title="Unix 101">
3731     <short><p>
3732         Need to use the UNIX environment for a course, want to overcome your fears of
3733         the command line, or just curious? Come and learn the arcane secrets of the
3734         UNIX command line interface from CSC mages. After this tutorial you will be
3735         comfortable with the essentials of navigating, manipulating and viewing files,
3736         and processing data at the UNIX shell prompt.
3737     </p></short>
3738 </eventitem>
3739
3740 <eventitem date="2009-05-12" time="12:00 PM" room="MC 2034" title="PHP on Windows">
3741     <short><p>PHP Programming Contest Info Session</p></short>
3742     <abstract><p>
3743     Port or create a new PHP web application and you could win a prize
3744     of up to $10k. Microsoft is running a programming contest for PHP
3745     developers willing to support the Windows platform. The contest is
3746     ongoing; this will be a short introduction to it by
3747     representatives of Microsoft and an opportunity to ask questions.
3748     Pizza and pop will be provided.
3749     </p></abstract>
3750 </eventitem>
3751
3752
3753 <!-- Winter 2009 -->
3754 <eventitem date="2009-04-02" time="4:30 PM" room="DC1302" title="Rapid prototyping and mathematical art">
3755
3756     <short><p>A talk by Craig S. Kaplan.</p></short>
3757
3758
3759     <abstract><p>The combination of computer graphics, geometry, and rapid
3760 prototyping technology has created a wide range of exciting
3761 opportunities for using the computer as a medium for creative
3762 expression.  In this talk, I will describe the most popular
3763 technologies for computer-aided manufacturing, discuss
3764 applications of these devices in art and design, and survey
3765 the work of contemporary artists working in the area (with a
3766 focus on mathematical art).  The talk will be primarily
3767 non-technical, but I will mention some of the mathematical
3768 and computational techniques that come into play.
3769 </p></abstract>
3770
3771 </eventitem>
3772 <eventitem date="2009-04-03" time="6:00 PM" edate="2009-04-04"
3773            etime="6:00 AM" room="TBA" title="CTRL-D">
3774   <short>
3775     <p>
3776       Join the Club That Really Likes Dinner for the End Of Term
3777       party!  Inquire closer to the date for details.
3778     </p>
3779   </short>
3780   <abstract>
3781     <p>
3782       This is not an official club event and receives no funding.
3783       Bring food, drinks, deserts, etc.
3784     </p>
3785   </abstract>
3786 </eventitem>
3787
3788 <eventitem date="2009-03-27" time="6:00 PM" edate="2009-03-28"
3789            etime="12:00 PM" room="Comfy Lounge (MC)"
3790            title="Code Party">
3791   <short>
3792     <p>
3793       CSC Code Party!  Same as always - no sleep, lots of caffeine,
3794       and really nerdy entertainment.  Bonus:  Free Cake!
3795     </p>
3796   </short>
3797   <abstract>
3798     <p>
3799       This code party will have the usual, plus it will double as the
3800       closing of the programming contest.  Our experts will be
3801       available to help you polish off your submission.
3802     </p>
3803   </abstract>
3804 </eventitem>
3805
3806 <eventitem date="2009-03-19" time="4:30 PM" edate="2009-03-28"
3807            etime="12:00 PM" room="MC2061"
3808            title="Artificial Intelligence Contest">
3809     <short>
3810       <p>
3811         Come out and try your hand at writing a computer program that
3812         plays Minesweeper Flags, a two-player variant of the classic
3813         computer game, Minesweeper.  Once you're done, your program
3814         will compete head-to-head against the other entries in a
3815         fierce Minesweeper Flags tournament.  There will be a contest
3816         kick-off session on Thursday March 19 at 4:30 PM in room
3817         MC3036.  Submissions will be accepted until Saturday March 28.
3818       </p>
3819     </short>
3820     <abstract>
3821       <p>
3822         Come out and try your hand at writing a computer program that
3823         plays Minesweeper Flags, a two-player variant of the classic
3824         computer game, Minesweeper.  Once you're done, your program
3825         will compete head-to-head against the other entries in a
3826         fierce Minesweeper Flags tournament.  There will be a contest
3827         kick-off session on Thursday March 19 at 4:30 PM in room
3828         MC3036.  Submissions will be accepted until Saturday March 28.
3829       </p>
3830     </abstract>
3831 </eventitem>
3832
3833 <eventitem date="2009-03-05" time="4:30 PM" edate="2009-03-05"
3834            etime="6:30 PM" room="Comfy Lounge"
3835            title="SIGGRAPH Night">
3836   <short>
3837     <p>
3838       Come out and watch the SIGGRAPH (Special Interest Group on
3839       Graphics) conference video review.  A video of insane, amazing,
3840       and mind blowing computer graphics. .
3841     </p>
3842   </short>
3843   <abstract>
3844     <p>
3845       The ACM SIGGRAPH (Special Interest Group on Graphics) hosts a
3846       conference yearly in which the latest and greatest in computer
3847       graphics premier. They record video and as a result produce a
3848       very nice Video Review of the conference. Come join us watching
3849       these videos, as well as a few professors from the UW Computer
3850       Graphics Lab. There will be some kind of food and drink, and its
3851       guranteed to be dazzling.
3852     </p>
3853   </abstract>
3854 </eventitem>
3855
3856 <eventitem date="2009-03-12" time="8:00 AM" edate="2009-03-13"
3857            etime="9:00 PM" room="Toronto Hilton"
3858            title="Canadian Undergraduate Technology Conference">
3859   <short>
3860     <p>
3861       See <a href="http://www.cutc.ca">cutc.ca</a> for more details.
3862     </p>
3863   </short>
3864   <abstract>
3865     <p>
3866       The Canadian Undergraduate Technology Conference is Canada's
3867       largest student-run conference. From humble roots it has emerged
3868       as a venue that offers an environment for students to grow
3869       socially, academically, and professionally. We target to exceed
3870       our past record of 600 students from 47 respected institutions
3871       nationwide. The event mingles ambitious as well as talented
3872       students with leaders from academia and industry to offer
3873       memorable experiences and valuable opportunities.
3874     </p>
3875   </abstract>
3876 </eventitem>
3877
3878 <eventitem date="2009-03-09" time="3:00 PM" room="DC1302"
3879            title="Prabhakar Ragde">
3880     <short><p>
3881     Functional Lexing and Parsing</p></short>
3882     <abstract>
3883       <p>
3884         This talk will describe a non-traditional functional approach
3885         to the classical problems of lexing (breaking a stream of
3886         characters into "words" or tokens) and parsing (identifying
3887         tree structure in a stream of tokens based on a grammar,
3888         e.g. for a programming language that needs to be compiled or
3889         interpreted). The functional approach can clarify and organize
3890         a number of algorithms that tend to be opaque in their
3891         conventional imperative presentation. No prior background in
3892         functional programming, lexing, or parsing is assumed.
3893       </p>
3894     </abstract>
3895 </eventitem>
3896
3897 <eventitem date="2009-03-12" time="5:00 PM" etime="7:00 PM" room="RAC2009"
3898            title="IQC - Programming Quantum Computers">
3899     <short>
3900       <p>
3901         A brief intro to Quantum Computing and why it matters,
3902         followed by a talk on programming quantum computers.  Meet at
3903         the CSC at 4:00PM for a guided walk to the RAC.
3904       </p>
3905     </short>
3906     <abstract>
3907       <p>
3908         Raymond Laflamme is the director of the Institute for Quantum
3909         Computing at the University of Waterloo and holds the Canada
3910         Research Chair in Quantum Information.  He will give a brief
3911         introduction to quantum computing and why it matters, followed
3912         by a talk on programming quantum computers.  There will be
3913         tours of the IQC labs at the end, and pizza will be provided
3914         back at the CSC for all attendees.
3915       </p>
3916     </abstract>
3917 </eventitem>
3918
3919 <eventitem date="2009-02-27" time="5:00 PM" etime="7:00 PM" room="CSC Office: MC3036" title="Dooly's Night">
3920     <short><p>
3921     Come join the CSC as we head to Dooly's.</p></short>
3922     <abstract><p>
3923     Meet us at the Club office as we head to Dooly's for cheap tables and good times.</p></abstract>
3924 </eventitem>
3925
3926 <eventitem date="2009-02-05" time="5:30 PM" room="MC2062 and MC2063" title="UNIX 101 and 102">
3927     <short><p>
3928     Continuing the popular Unix Tutorials with a rerun of 101 and the debut of 102.</p></short>
3929     <abstract><p>
3930     Unix 101 is an introduction to the Unix shell environment, both on the student
3931     servers and on other Unix environments. Topics covered include: using the shell, both basic
3932     interaction and advanced topics like scripting and job control, the filesystem and manipulating
3933     it, and ssh. </p><p>
3934     Unix 102 is a follow up to Unix 101, requiring basic knowledge of the shell.
3935     If you missed Unix101 but still know your way around you should be fine.
3936     Topics covered include: "real" editors, document typesetting with LaTeX
3937     (great for assignments!), bulk editing, spellchecking, and printing in the
3938     student environment and elsewhere. </p><p>
3939     If you aren't interested or feel comfortable with these taskes, watch out for
3940     Unix 103 and 104 to get more depth in power programming tools on Unix. </p></abstract>
3941 </eventitem>
3942
3943
3944 <eventitem date="2009-02-03" time="5:30 PM" room="MC3003" title="UNIX 101">
3945     <short><p> New to Unix? No problem, we'll teach you to power use circles around your friends!</p></short>
3946     <abstract><p>This first tutorial is an introduction to the Unix shell environment, both on the student
3947         servers and on other Unix environments. Topics covered include: using the shell, both basic
3948         interaction and advanced topics like scripting and job control, the filesystem and manipulating
3949         it, and ssh. If you feel you're already familiar with these topics don't hesitate to come
3950         to Unix 102 to learn about documents, editing, and other related tasks, or watch out
3951         for Unix 103 and 104 that get much more in depth into power programming tools on Unix.</p></abstract>
3952 </eventitem>
3953
3954 <eventitem date="2009-02-06" time="7:00 PM" room="Comfy Lounge" title="Code Party!">
3955   <short>
3956     <p>
3957       There is a CSC Code Party starting at 7:00PM (19:00).  Come out
3958       and enjoy some good old programming and meet others interested
3959       in writing code!  Free energy drinks and snacks for all.  Plus,
3960       we have lots of things that need to be done if you're looking
3961       for a project to work on!
3962     </p>
3963   </short>
3964   <abstract>
3965     <p>
3966       Code Party.  Awesome.  Need we say more?
3967     </p>
3968   </abstract>
3969 </eventitem>
3970
3971 <eventitem date="2009-01-16" time="7:30 PM" room="Comfy Lounge" title="Code party !!11!!1!!">
3972
3973     <short><p>There is a CSC Code Party Tonight starting at 7:30PM
3974     (1930) until we get bored (likely in the early in morning). Come
3975     out for fun hacking times, spreading Intertube memes (optional),
3976     hacking on the OpenMoko, creating music mixes, and other general
3977     classyness. If we manage to swing it, there will be delicious
3978     energy drinks for your consumption! Alternatively, if we don't we
3979     will have each other as well as some delicious tea and
3980     coffee. Perhaps a crumpet
3981 </p></short>
3982
3983
3984     <abstract><p>There is a CSC Code Party Tonight starting at 7:30PM
3985         (1930) until we get bored (likely in the early in
3986         morning). Come out for fun hacking times, spreading Intertube
3