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