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