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