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