More stuff ?
[mspang/www.git] / events.xml
1 <eventdefs>
2
3 <!-- Spring 2006 -->
4
5
6 <eventitem date="2006-05-25" time="4:00 PM" room="MC 4060" title="Eighteen Years in the Software Tools Business">
7  <short>Eighteen Years in the Software Tools Business at Microsoft, a talk by Rico Mariani, (BMath CS/EEE 1988)</short>
8  <abstract>
9   <p>
10   Rico Mariani, (BMath CS/EEE 1988) now an (almost) 18 year Microsoft veteran but then a CSC president comes to talk to us about the 
11 evolution of software tools for microcomputers.  This talk promises to be a little bit about history and perspective (at least from 
12 the Microsoft side of things) as well as the evolution of software engineers, different types of programmers and their needs, and what 
13 it's like to try to make the software industry more effective at what it does, and sometimes succeed!
14   </p>
15 <p>
16 Expect a video of the talk next week!
17 Yarr!
18 </p>
19  </abstract>
20 </eventitem>
21
22 <eventitem date="2006-05-14" time="1:00 PM" room="CSC" title="Unix 101 and 102 Recording">
23  <short>Unix 101 and 102 recording</short>
24  <abstract>
25   <p>
26   Have you heard of our famous Unix 101 and Unix 102 tutorials. We've decided to try 
27   and put them on the web. This sunday we will be doing a first take.
28   At the same time, we're going to be looking at adding new material
29   that we haven't covered in the past. </p>
30   <p>
31   Why should you come out? Not only will you get to hang out with a wonderful group of people,
32   you can help impart your knowledge to the world. Don't know anything about unix? Thats cool too,
33   we need people to make sure its easy to follow along and hopefully keep us from leaving something
34   out by mistake. 
35   </p>
36   </abstract>
37 </eventitem>
38
39 <eventitem date="2006-05-13" time="1:00 PM" room="CSC" title="Video 4 Linux Day">
40  <short> We don't know enough about V4L</short>
41  <abstract>
42   <p>
43   We don't know Video 4 Linux, but increasingly people are wanting to do interesting stuff with our webcam which 
44 could benefit from a better understanding of Video 4 Linux. So, this saturday a number of us will be trying to learn 
45 as much as possible about Video 4 Linux and doing wierd things with webcam(s).
46   </p>
47   </abstract>
48 </eventitem>
49
50 <eventitem date="2006-05-08" time="4:30 PM" room="The Comfy Lounge" title="CSC
51 Elections">
52  <short>Come out and vote for the Spring 2006 executive!</short>
53  <abstract>
54   <p>
55   The Computer Science Club will be holding its elections for the Spring 2006
56   term on Monday, May 8th.  The elections will be held at 4:30 PM in the
57   Comfy Lounge, on the 3rd floor of the MC. Please remember to come out and
58   vote!
59   </p>
60   <p>
61   We are accepting nominations for the following positions: President,
62   Vice-President, Treasurer, and Secretary. The nomination period continues
63   until 4:30 PM on Sunday, May 7th. If you are interested in running for
64   a position, or would like to nominate someone else, please email
65   cro@csclub.uwaterloo.ca before the deadline. 
66   </p>
67  </abstract>
68 </eventitem>
69
70 <!-- Winter 2006 -->
71
72   <eventitem date="2006-03-06" time="4:45 PM"
73    room="Physics 145" title="Creating Killer Applications">
74    <short>A talk by Larry Smith</short>
75    <abstract>
76    <p>
77         A discussion of how software creators can identify application opportunities
78         that offer the promise of great social and commercial significance. Particular
79         attention will be paid to the challenge of acquiring cross domain knowledge
80         and setting up effective collaboration.
81     </p>
82     </abstract>
83   </eventitem>
84
85
86   <eventitem date="2006-02-09" time="5:30 PM" room="Bombshelter Pub" title="Pints With Profs">
87     <short>Come out and meet your professors. Free food provided!</short>
88     <abstract>
89     <p>Come out and meet your professors!  This is a great opportunity to
90     mingle with your professors before midterms or find out who you might
91     have for future courses.  All are welcome!</p>
92
93     <p>Best of all, there will be <strong>free food!</strong></p>
94
95     <p>You can pick up invitations for your professors at the Computer Science
96     Club office in MC 3036.</p>
97
98     <p>Pints with Profs will be held this term on Thursday, 9 February 2006
99     from 5:30 to 8:00 PM in the Bombshelter.</p>
100     </abstract>
101   </eventitem>
102
103 <!-- Fall 2005 -->
104
105   <eventitem date="2005-11-29" time="5:30 PM"
106    room="TBA" title="Programming Contest">
107    <short>Come out, program, and win shiney things!</short>
108    <abstract>
109    <p>
110         The Computer Science club is holding a programming contest open to all students on tuesday the 29th of november at 5:30PM. C++,C,Perl,Scheme* are allowed. Prizes totalling in value of $75 will be distributed. 
111
112    </p>
113
114    <p>And best of all... free food!!!</p>
115    </abstract>
116   </eventitem>
117
118
119   <eventitem date="2005-10-17" time="5:30 PM"
120    room="Fishbowl" title="Party with Profs!">
121    <short>Get to know your profs and be the envy of your
122    friends!</short>
123    <abstract>
124    <p>
125      Come out and meet your professors!!  This is a great opportunity to
126      meet professors for Undergraduate Research jobs or to find out who
127      you might have for future courses.  One and all are welcome!
128    </p>
129
130    <p>And best of all... free food!!!</p>
131    </abstract>
132   </eventitem>
133
134
135 <eventitem date="2005-10-11" time="4:30 PM" room="MC 2037" title="UNIX 103:  Scripting Unix">
136  <short>You Too Can Be a Unix Taskmaster</short>
137  <abstract>
138   <p>
139   This is the third in a series of seminars that cover the use of the
140   UNIX Operating System. UNIX is used in a variety of applications, both
141   in academia and industry. We will provide you with hands-on experience
142   with the Math Faculty's UNIX environment in this tutorial.
143   </p><p>
144   Topics that will be discussed include:
145   <ul>
146   <li>Shell scripting</li>
147   <li>Searching through text files</li>
148   <li>Batch editing text files</li>
149   </ul>
150   </p><p>
151   If you do not have a Math computer account, don't panic; one will be lent to
152   you for the duration of this class.
153   </p>
154  </abstract>
155 </eventitem>
156
157
158 <eventitem date="2005-10-06" time="4:30 PM" room="MC3D 2037" title="UNIX 102">
159  <short>Fun with Unix</short>
160  <abstract>
161  <p>
162  This is the second in a series of seminars that cover the use of the
163  Unix Operating System. Unix is used in a variety of
164  applications, both in academia and industry. We will provide you with hands-on
165  experience with the Math Faculty's Unix environment in this tutorial.
166  </p>
167  <p>
168  Topics that will be discussed include:
169  <ul>
170  <li>Interacting with Bourne and C shells</li>
171  <li>Editing text using the vi text editor</li>
172  <li>Editing text using the Emacs display editor</li>
173  <li>Multi-tasking and the screen multiplexer</li>
174  </ul>
175  </p>
176  <p>
177  If you do not have a Math computer account, don't panic; one will be lent to
178  you for the duration of this class.
179  </p>
180  </abstract>
181 </eventitem>
182
183 <eventitem date="2005-10-04" time="4:30 PM" room="MC 2037" title="UNIX 101">
184  <short>First UNIX tutorial</short>
185  <abstract>
186   <p>
187   The CSC UNIX tutorials are intended to help first year CS and other
188   interested learn UNIX and the CS UNIX environment.
189   </p>
190   <p>
191   This is the first in a series of two or three tutorials. It will cover basic shell
192   use, and simple text editors.
193   </p>
194  </abstract>
195 </eventitem>
196
197
198 <!-- Summer 2005 -->
199 <eventitem date="2005-06-02" time="3:30 PM" room="DC 1302" title="Programming and Verifying the Interactive Web">
200  <short>Shriram Krishnamurthi will be talking about continuations in Web Programming</short>
201 <abstract>
202 <p>
203 Server-side Web applications have grown increasingly common, sometimes
204 even replacing brick and mortar as the principal interface of
205 corporations.  Correspondingly, Web browsers grow ever more powerful,
206 empowering users to attach bookmarks, switch between pages, clone
207 windows, and so forth.  As a result, Web interactions are not
208 straight-line dialogs but complex nets of interaction steps.
209 </p>
210 <p>
211 In practice, programmers are unaware of or are unable to handle these
212 nets of interaction, making the Web interfaces of even major
213 organizations buggy and thus unreliable.  Even when programmers do
214 address these constraints, the resulting programs have a seemingly
215 mangled structure, making them difficult to develop and hard to
216 maintain.
217 </p>
218 <p>
219 In this talk, I will describe these interactions and then show how
220 programming language ideas can shed light on the resulting problems
221 and present solutions at various levels.  I will also describe some
222 challenges these programs pose to computer-aided verification, and
223 present solutions to these problems.
224 </p>
225 </abstract>
226 </eventitem>
227 <eventitem date="2005-06-07" time="4:00 PM" room="MC 4042" title="UW's CS curriculum: past, present, and future">
228 <short>Come out to here Prabhakar Ragde talk about our UW's CS curriculum</short>
229 <abstract>
230 <p>
231 I'll survey the evolution of our computer science curriculum over the
232 past thirty-five years to try to convey the reasons (not always entirely
233 rational) behind our current mix of courses and their division into core
234 and optional. After some remarks about constraints and opportunities in
235 the near future, I'll open the floor to discussion, and hope to hear
236 some candid comments about the state of CS at UW and how it might be
237 improved.
238 </p><br></br>
239 About the speaker:<br></br>
240 <p>
241 Prabhakar Ragde is a Professor in the School of Computer Science at UW.
242 He was Associate Chair for Curricula during the period that saw the
243 creation of the Bioinformatics and Software Engineering programs, the
244 creation of the BCS degree, and the strengthening of the BMath/CS degree.
245 </p>
246 </abstract>
247 </eventitem>
248
249 <!-- Winter 2005 -->
250 <eventitem date="2005-03-15" time="4:30 PM" room="MC 4060" title="Oh No! More Lemmings Day!">
251  <short>Come out for some retro Amiga-style Lemmings gaming action!</short>
252  <abstract>
253  <p>
254  Does being in CS make you feel like a lemming?  Is linear algebra driving you
255  into walls?  Do you pace back and forth, constantly, regardless of whatever's
256  in your path?  Then you should come out to CSC Lemmings Day.  This time, we're
257  playing the pseudo-sequel:  Oh No! More Lemmings!
258  </p>
259  <ul>
260   <li>Old-skool retro gaming, Amiga-style (2 mice, 2 players!)</li>
261   <li>Projector screen: the pixels are man-sized!</li>
262   <li>Live-Action Lemmings (the rules are better this time)</li>
263   <li>Lemmings look-alike contest</li>
264   <li>Enjoy classic Lemmings tunes</li>
265  </ul>
266  </abstract>
267 </eventitem>
268
269 <eventitem date="2005-02-01" time="4:30 PM" room="MC 2037" title="UNIX 102">
270  <short>Fun with Unix</short>
271  <abstract>
272  <p>
273  This is the second in a series of seminars that cover the use of the
274  Unix Operating System. Unix is used in a variety of
275  applications, both in academia and industry. We will provide you with hands-on
276  experience with the Math Faculty's Unix environment in this tutorial.
277  </p>
278  <p>
279  Topics that will be discussed include:
280  <ul>
281  <li>Interacting with Bourne and C shells</li>
282  <li>Editing text using the vi text editor</li>
283  <li>Editing text using the Emacs display editor</li>
284  <li>Multi-tasking and the screen multiplexer</li>
285  </ul>
286  </p>
287  <p>
288  If you do not have a Math computer account, don't panic; one will be lent to
289  you for the duration of this class.
290  </p>
291  </abstract>
292 </eventitem>
293
294
295 <eventitem date="2005-01-25" time="4:30 PM" room="MC 2037" title="UNIX 101">
296  <short>First UNIX tutorial</short>
297  <abstract>
298   <p>
299   The CSC UNIX tutorials are intended to help first year CS and other
300   interested learn UNIX and the CS UNIX environment.
301   </p>
302   <p>
303   This is the first in a series of two or three tutorials. It will cover basic shell
304   use, and simple text editors.
305   </p>
306  </abstract>
307 </eventitem>
308
309
310 <eventitem date="2005-01-13" time="4:30 PM" room="The Comfy Lounge" title="CSC
311 Elections">
312  <short>Come out and vote for the Winter 2005 executive!</short>
313  <abstract>
314   <p>
315   The Computer Science Club will be holding its elections for the Winter 2005
316   term on Thursday, January 13.  The elections will be held at 4:30 PM in the
317   Comfy Lounge, on the 3rd floor of the MC. Please remember to come out and
318   vote!
319   </p>
320   <p>
321   We are accepting nominations for the following positions: President,
322   Vice-President, Treasurer, and Secretary. The nomination period continues
323   until 4:30 PM on Wednesday, January 12. If you are interested in running for
324   a position, or would like to nominate someone else, please email
325   cro@csclub.uwaterloo.ca before the deadline. 
326   </p>
327  </abstract>
328 </eventitem>
329
330
331 <!-- Fall 2004 -->
332
333 <eventitem date="2004-12-08" time="4:30 PM" room="Mongolian Grill"
334 title="CTRL-D">
335  <short> This semesters CTRL-D (or the club that really likes
336 dinner) is going to be at mongolian grill. Be there or be square</short>
337  <abstract>
338         <p>
339 Come to the end of term CTRL-D (club that really likes dinner) meeting.
340 Remember : food is good 
341 </p>
342  </abstract>
343 </eventitem>
344
345
346 <eventitem date="2004-12-01" time="2:30 PM" room="MC 4058" title="Knitting needles, hairpins and other tangled objects">
347  <short>In this talk, I'll study linkages (objects built from sticks that are connected with flexible joints), and explain some 
348 interesting examples that can or cannot be straightened out</short>
349  <abstract>
350         <p>
351  In this talk, I'll study linkages (objects built from sticks that are connected with flexible joints), and explain some 
352 interesting examples that can or cannot be straightened out</p>
353
354  </abstract>
355 </eventitem>
356
357
358 <eventitem date="2004-11-24" time="4:30 PM" room="MC 2066" title="Eclipse">
359  <short>How I Stopped Worrying and Learned to Love the IDE</short>
360  <abstract>
361   <p>
362         How I stopped worrying and Learned to Love the IDE
363   </p>
364   <p>
365         Audience: anyone who as ever used the Java programming language to do anything. Especially if you don't like 
366 the IDEs you've seen so far or still use (g)Vi(m) or (X)Emacs. 
367   </p>
368
369   <p>
370         I'll go through some of the coolest features of the best IDE (which stands for "IDEs Don't Eat" or 
371 "Integrated Development Environment") I've seen. For the first year and seasoned almost-grad alike!
372   </p>
373
374  </abstract>
375 </eventitem>
376
377
378 <eventitem date="2004-11-18" time="5:00 PM" room="MC 2066" title="GracefulTavi">
379  <short>Wiki software in PHP+MySQL</short>
380  <abstract>
381   <p>
382    GracefulTavi is an open source wiki programmed by Net Integration
383    Technologies Inc. It is used internally by more than 25 people, and is
384    the primary internal wiki for NITI's R&amp;D and QA.
385   </p>
386   <p>
387    I'll start with a very brief introduction to wikis in general, then
388    show off our special features: super-condensed formatting syntax,
389    hierarchy management, version control, highlighted diffs, SchedUlator,
390    the Table of Contents generator. As part of this, we'll explain the
391    simple plugin architecture and show people how to write a basic wiki
392    plugin.
393   </p>
394
395   <p>
396    As well, I will show some of the "waterloo specific" macros that have
397    been coded, and explain future plans for GracefulTavi.
398   </p>
399
400   <p>
401    If time permits, I will explain how gracefulTavi can be easily used
402    for a personal calendar and notepad system on your laptop.
403   </p>
404  </abstract>
405 </eventitem>
406
407
408
409 <eventitem date="2004-11-12" time="2:30 PM" room="MC 4063" title="Lemmings Day!">
410  <short>Everyone else is doing it!</short>
411  <abstract>
412   <p>
413         Does being in CS make you feel like a lemming? Is linear algebra driving you into walls? Do you pace back and forth , constantly ,
414 regardless of whatever's in your path? Then you should come out to CSC Lemmings Day!
415   </p><p>
416   <ul>
417   <li>Play some old-skool Lemmings, Amiga-style</li>
418   <li>Live-action lemmings</li>
419   <li>Lemmings look-alike contest</li>
420   <li>Enjoy classic Lemmings tunes</li>
421   </ul>
422   </p><p>
423         Everyone else is doing it!
424   </p>
425  </abstract>
426 </eventitem>
427
428
429 <eventitem date="2004-10-23" time="11:00 PM" room="MC 2037" title="CSC Programming Contest">
430         <short>CSC Programming Contest</short>
431         <abstract>
432         <p>
433         The Computer Science Clib will be hosting a programming competition.
434         You have the entire afternoon to design and implement an AI for a simple
435         game. The competition will run until 5pm.
436         </p>
437         </abstract>
438 </eventitem>
439
440
441 <eventitem date="2004-10-18" time="4:30 PM" room="MC 2037" title="UNIX 103:  Scripting Unix">
442  <short>You Too Can Be a Unix Taskmaster</short>
443  <abstract>
444   <p>
445   This is the third in a series of seminars that cover the use of the
446   UNIX Operating System. UNIX is used in a variety of applications, both
447   in academia and industry. We will provide you with hands-on experience
448   with the Math Faculty's UNIX environment in this tutorial.
449   </p><p>
450   Topics that will be discussed include:
451   <ul>
452   <li>Shell scripting</li>
453   <li>Searching through text files</li>
454   <li>Batch editing text files</li>
455   </ul>
456   </p><p>
457   If you do not have a Math computer account, don't panic; one will be lent to
458   you for the duration of this class.
459   </p>
460  </abstract>
461 </eventitem>
462
463 <eventitem date="2004-10-04" time="4:30 PM" room="MC 2037" title="UNIX 102">
464  <short>Fun with Unix</short>
465  <abstract>
466  <p>
467  This is the second in a series of seminars that cover the use of the
468  Unix Operating System. Unix is used in a variety of
469  applications, both in academia and industry. We will provide you with hands-on
470  experience with the Math Faculty's Unix environment in this tutorial.
471  </p>
472  <p>
473  Topics that will be discussed include:
474  <ul>
475  <li>Interacting with Bourne and C shells</li>
476  <li>Editing text using the vi text editor</li>
477  <li>Editing text using the Emacs display editor</li>
478  <li>Multi-tasking and the screen multiplexer</li>
479  </ul>
480  </p>
481  <p>
482  If you do not have a Math computer account, don't panic; one will be lent to
483  you for the duration of this class.
484  </p>
485  </abstract>
486 </eventitem>
487
488 <!-- Spring 2004 -->
489
490 <eventitem date="2004-09-27" time="4:30 PM" room="MC 2037" title="UNIX 101">
491  <short>First UNIX tutorial</short>
492  <abstract>
493   <p>
494   The CSC UNIX tutorials are intended to help first year CS and other
495   interested learn UNIX and the CS UNIX environment.
496   </p>
497   <p>
498   This is the first in a series of three tutorials. It will cover basic shell
499   use, and simple text editors.
500   </p>
501  </abstract>
502 </eventitem>
503 <eventitem date="2004-09-17" time="4:00 PM" room="The Comfy Lounge" title="CSC
504 Elections">
505  <short>Come out and vote for the Fall 2004 executive!</short>
506  <abstract>
507   <p>
508   The Computer Science Club will be holding its elections for the Fall 2004
509   term on Friday, September 17. The elections will be held at 4:00 PM in the
510   Comfy Lounge, on the 3rd floor of the MC. Please remember to come out and
511   vote!
512   </p>
513   <p>
514   We are accepting nominations for the following positions: President,
515   Vice-President, Treasurer, and Secretary. The nomination period continues
516   until 4:30 PM on Thursday, September 16. If you are interested in running
517   for a position, or would like to nominate someone else, please email
518   cro@csclub.uwaterloo.ca before the deadline. 
519   </p>
520  </abstract>
521 </eventitem>
522
523 <eventitem date="2004-07-27" time="4:30 PM" room="MC 2065"
524 title="Game Complexity Theorists Ponder, by Jonathan Buss">
525 <short>Attention AI buffs: Game Complexity presentation</short>
526 <abstract>
527 <p>
528 Why are some games hard to play well?  The study of computational
529 complexity gives one answer: the games encode long computations.</p>
530
531 <p>Any computation can be interpreted as an abstract game.  Playing the
532 game perfectly requires performing the computation.  Remarkably, some
533 natural games can encode these abstract games and thus simulate
534 general computations.  The more complex the game, the more complex the
535 computations it can encode; games that can encode intractable problems
536 are themselves intractable.</p>
537
538 <p>
539 I will describe how games can encode computations, and discuss some
540 examples of both provably hard games (checkers, chess, go, etc.) and
541 games that are believed to be hard (hex, jigsaw puzzles, etc.).
542 </p>
543 </abstract>
544 </eventitem>  
545
546 <eventitem date="2004-07-17" time="11:30 AM" room="RCH 308"
547    title="Case Modding Workshop!">
548    <short>Come and learn how to make your computer 1337!</short>
549    <abstract>
550     <p>
551 Are you bored of beige?<br />
552 Tired of an overheating computer?<br />
553 Is your computer's noise level on par with a jet engine?
554     </p>
555     <p>
556 Got a nifty modded case?<br />
557 Want one?
558     </p>
559     <p>
560 The Computer Science Club will be holding a Case Modding Workshop
561 to help answer these questions.
562     </p>
563     <p>
564 There will be demonstrations on how to make a case window, how
565 to paint your case, managing cables and keeping your computer
566 quiet and cool.
567     </p>
568     <p>
569 The event is FREE and there will be FREE PIZZA.  All are welcome!
570     </p>
571     <p>
572 To help you on your way to getting a wicked computer case, we have a limited
573 number of "Case Modding Starters Kits" available.  They come with an LED fan,
574 a fan grill, a sheet of Plexan, thumbscrews, wire ties, and more!  They're
575 only $10 and will be on sale at the event.  Here's a <a
576 href="redkit.jpg">picture</a>.
577     </p>
578     <p>
579 If you already have a modded case, we encourage you to bring it out
580 and show it off!  There will be a prize for the best case!!
581     </p>
582     <p>
583 We hope to see you there!
584     </p>
585     <p>
586 This event is sponsored by Bigfoot Computers.
587     </p>
588    </abstract>
589   </eventitem>
590
591   <eventitem date="2004-06-17" time="4:00 PM" room="MC 2066"
592    title="``Optical Snow'': Motion parallax and heading computation in densely cluttered scenes. -or- Why Computer Vision needs the Fourier Transform!">
593    <short>A talk by Richard Mann; School of Computer Science</short>
594    <abstract>
595     <p>
596 When an observer moves through a 3D scene, nearby surfaces move faster in the
597 image than do distant surfaces.  This effect, called motion parallax, provides
598 an observer with information both about their own motion relative the scene,
599 and about the spatial layout and depth of surfaces in the scene.
600     </p>
601     <p>
602 Classical methods for measuring image motion by computer have concentrated on
603 the cases of optical flow in which the motion field is continuous, or layered
604 motion in which the motion field is piecewise continuous.  Here we introduce a
605 third natural category which we call ``optical snow''.  Optical snow arises in
606 many natural situations such as camera motion in a highly cluttered 3-D scene,
607 or a passive observer watching a snowfall.  Optical snow yields dense motion
608 parallax with depth discontinuities occurring near all image points.  As such,
609 constraints on smoothness or even smoothness in layers do not apply.
610     </p>
611     <p>
612 We present a Fourier analysis of optical snow.  In particular we show that,
613 while such scenes appear complex in the time domain, there is a simple
614 structure in the frequency domain, and this may be used to determine the
615 direction of motion and the range of depths of objects in the scenes.  Finally
616 we show how Fourier analysis of two or more image regions may be combined to
617 estimate heading direction.
618     </p>
619     <p>
620 This talk will present current research at the undergraduate level.  All are
621 welcome to attend.
622     </p>
623    </abstract>
624   </eventitem>
625   
626
627   <eventitem date="2004-05-26" time="5:30 PM"
628    room="DC 1350" title="Computing's Next Great Empires: The True Future of Software">
629    <short>A talk by Larry Smith</short>
630    <abstract>
631    <p>
632      Larry will challenge conventional assumptions about the directions of           
633      computing and software. The role of AI, expert systems, communications          
634      software and business applications will be presented both from a                
635      functional and commercial point of view.  The great gaps in the                 
636      marketplace will be highlighted, together with an indication of how             
637      these vacant fields will become home to new empires.                            
638     </p>
639     </abstract>
640   </eventitem>
641   <eventitem date="2004-05-12" time="4:30 PM"
642    room="The Comfy Lounge" title="CSC Elections">
643    <short>Come out and vote for the Spring 2004 executive!</short>
644    <abstract>
645    <p>
646      The Computer Science Club will be holding its elections for the Spring
647      2004 term on Wednesday, May 12.  The elections will be held at 4:30 PM in
648      the Comfy Lounge, on the 3rd floor of the MC.  Please remember to come out
649      and vote!
650    </p>
651    <p>
652      We are accepting nominations for the following positions: President,
653      Vice-President, Treasurer, and Secretary.  The nomination period continues
654      until 4:30 PM on Tuesday, May 11.  If you are interested in running
655      for a position, or would like to nominate someone else, please email
656      cro@csclub.uwaterloo.ca before the deadline.
657    </p>
658    </abstract>
659   </eventitem>
660
661 <!-- Winter 2004 -->
662
663   <eventitem date="2004-03-29" time="6:00 PM"
664    room="MC 4058" title="LaTeXing your work report">
665    <short>A talk by Simon Law</short>
666    <abstract>
667    <p>
668      The work report is a familiar chore for any co-op student. Not only is
669      there a report to write, but to add insult to injury, your report is
670      returned if you do not follow your departmental guidelines.
671    </p>
672
673    <p>
674      Fear no more! In this talk, you will learn how to use LaTeX and a
675      specially developed class to automatically format your work reports.
676      This talk is especially useful to Mathematics, Computer Science,
677      Electrical &amp; Computer Engineering, and Software Engineeering co-op
678      students about to go on work term.
679    </p>
680    </abstract>
681   </eventitem>
682
683   <eventitem date="2004-03-30" time="5:30 PM"
684    room="The Grad House" title="Pints with Profs!">
685    <short>Get to know your profs and be the envy of your
686    friends!</short>
687    <abstract>
688    <p>
689      Come out and meet your professors!!  This is a great opportunity to
690      meet professors for Undergraduate Research jobs or to find out who
691      you might have for future courses.  One and all are welcome!
692    </p>
693
694    <p>And best of all... free food!!!</p>
695    </abstract>
696   </eventitem>
697
698   <eventitem date="2004-03-23" time="6:00 PM"
699    room="MC4058" title="Extending LaTeX with packages">
700    <short>A talk by Simon Law</short>
701    <abstract>
702    <p>
703      LaTeX is a document processing system.  What this means is you describe
704      the structure of your document, and LaTeX typesets it appealingly.
705      However, LaTeX was developed in the late-80s and is now showing its age.
706    </p>
707
708    <p>
709      How does it compete against modern systems?  By being easily extensible,
710      of course.  This talk will describe the fundamentals of typesetting in
711      LaTeX, and will then show you how to extend it with freely available
712      packages.  You will learn how to teach yourself LaTeX and how to find
713      extensions that do what you want.
714    </p>
715
716    <p>
717      As well, there will be a short introduction on creating your own
718      packages, for your own personal use.
719    </p>
720    </abstract>
721   </eventitem>
722
723   <eventitem date="2004-03-16" time="6:00 PM"
724    room="MC4058" title="Distributed programming for CS and Engineering
725    students">
726    <short>A talk by Simon Law</short>
727    <abstract>
728    <p>
729      If you've ever worked with other group members, you know how difficult
730      it is to code simultaneously.  You might be working on one part of your
731      assignment, and you need to send your source code to everyone else.  Or
732      you might be fixing a bug in someone else's part, and need to merge in
733      the change.  What a mess!
734    </p>
735
736    <p>
737      This talk will explain some Best Practices for developing code in a
738      distributed fashion.  Whether you're working side-by-side in the lab, or
739      developing from home, these methods can apply to your team.  You will
740      learn how to apply these techniques in the Unix environment using GNU
741      Make, CVS, GNU diff and patch.
742    </p>
743    </abstract>
744   </eventitem>
745
746   <eventitem date="2004-03-15" time="5:30 PM"
747    room="MC4040" title="SPARC Architecture">
748    <short>A talk by James Morrison</short>
749    <abstract>
750    <p>
751      Making a compiler?  Bored?  Think CISC sucks and RISC rules?
752    </p>
753
754    <p>
755      This talk will run through the SPARC v8, IEEE-P1754, architecture.
756      Including all the fun that can be had with register windows and the
757      SPARC instruction set including the basic instructions, floating
758      point instructions, and vector instructions.
759    </p>
760    </abstract>
761   </eventitem>
762
763   <eventitem date="2004-03-09" time="6:00 PM"
764    room="MC4062" title="Managing your home directory using CVS">
765    <short>A talk by Simon Law</short>
766    <abstract>
767    <p>
768      If you have used Unix for a while, you know that you've created
769      configuration files, or dotfiles.  Each program seems to want its own
770      particular settings, and you want to customize your environment.  In a
771      power-user's directory, you could have hundreds of these files.
772    </p>
773
774    <p>
775      Isn't it annoying to migrate your configuration if you login to another
776      machine?  What if you build a new computer?  Or perhaps you made a
777      mistake to one of your configuration files, and want to undo it?
778    </p>
779
780    <p>
781      In this talk, I will show you how to manage your home directory using
782      CVS, the Concurrent Versions System.  You can manage your files, revert
783      to old versions in the past, and even send them over the network to
784      another machine.  I'll also discuss how to keep your configuration files
785      portable, so they'll work even on different Unices, with different
786      software installed.
787    </p>
788    </abstract>
789   </eventitem>
790
791   <eventitem date="2004-03-02" time="6:00 PM"
792    room="MC4042" title="Graphing webs-of-trust">
793    <short>A talk by Simon Law</short>
794    <abstract>
795    <p>
796      In today's world, people have hundreds of connexions.  And you can
797      express these connexions with a graph.  For instance, you may wish to
798      represent the network of your friends.
799    </p>
800
801    <p>
802      Originally, webs-of-trust were directed acyclic graphs of people who had
803      identified each other.  This way, if there was a path between you and
804      the person who want to identify, then you could assume that each person
805      along that path had verified the next person's identity.
806    </p>
807
808    <p>
809      I will show you how to generate your own web-of-trust graph using Free
810      Software.  Of course, you can also use this knowledge to graph anything
811      you like.
812    </p>
813    </abstract>
814   </eventitem>
815
816   <eventitem date="2004-02-18" time="7:00 PM"
817    room="DC2305" title="KW Perl Mongers">
818    <short>Perl Modules: A look under the hood</short>
819    <abstract>
820
821    <p>In Perl, a module is the basic unit of code-reuse.  The talk will be
822    mostly a look into GD::Text::Arc, a module written to draw TrueType text
823    around the edge of a circle.  The talk will consider:</p>
824
825    <ul>
826    <li>using and writing object-oriented perl code</li>
827    <li>the Virtue of Laziness: or, reusing other peoples' code.</li>
828    <li>writing tests while coding</li>
829    <li>beer coasters</li>
830    </ul>
831
832    </abstract>
833   </eventitem>
834
835   <eventitem date="2004-02-05" time="3:30 PM"
836    room="MC4041" title="Constitutional Change">
837    <short>Vote to change the CSC Constitution</short>
838    <abstract>
839
840    <p>During the General Meeting on 19 January 2004, a proposed constitution
841    change was passed around.  This change is in response to a change in the
842    MathSoc Clubs Policy (Policy 4, Section 3, Sub-section f).</p>
843
844    <p>This general meeting is called to vote on this proposed change.  We must
845    have quorum of 15 Full Members vote on this change.  The following text was
846    presented at the CSC Winter 2004 Elections.</p>
847
848 <pre>We propose to make a Constitutional change on this day, 19 January 2004.
849 The proposed change is to section 3.1 of the constitution which
850 currently reads:
851
852     In compliance with MathSoc regulations and in recognition of the
853     club being primarily targeted at undergraduate students, full
854     membership is open to all undergraduate students in the Faculty of
855     Mathematics and restricted to the same.
856
857 Since MathSoc has changed its requirements for club membership, we
858 propose that it be changed to:
859
860     In compliance with MathSoc regulations and in recognition of the
861     club being primarily targeted at undergraduate students, full
862     membership is open to all Social Members of the Mathematics Society
863     and restricted to the same.</pre>
864    </abstract>
865   </eventitem>
866
867   <eventitem date="2004-01-12" time="3:00 PM"
868    room="DC1301" title="InstallFest">
869    <short>See <a href="http://uw-dig.uwaterloo.ca/installfest/">http://uw-dig.uwaterloo.ca/installfest/</a></short>
870    <abstract>
871
872    <p>An Installfest is an opportunity to install software on your computer.
873    People come with computers. Other people come with experience. The people
874    get together and (when all goes well) everybody leaves satisfied.</p>
875
876    <p>You are invited to our first installfest of the year. Come to get some
877    software or to learn more about Open Source Software and why it is relevant
878    to your life. The event is free, but you may want to bring blank CDs and/or
879    money to purchase some open source action for your computer at home.</p>
880
881    <p>See the <a href="http://uw-dig.uwaterloo.ca/installfest/">UW-DIG
882    website</a> for more details.</p>
883
884    </abstract>
885   </eventitem>
886
887 <!-- Fall 2003 -->
888
889   <eventitem date="2003-12-01" time="7:00 PM"
890    room="RCH 101" title="Jon 'maddog' Hall: Free and Open Source: Its uses in Business and Education">
891    <short> Free and Open Source software has been around for a long
892    time, even longer then shrink-wrapped code.</short>
893    <abstract>
894  <p>Free and Open Source software has been around for a long time, even   
895 longer then shrink-wrapped code.  It has a long and noble history in the annals
896 of education.  Even more than ever, due to the drop of hardware prices and the
897 increase of worldwide communications, Free and Open Source can open new   
898 avenues of teaching and doing research, not only in computer science, but in
899 other university fields as well.</p>
900  <p>Learn how Linux as an operating system can
901 run on anything from a PDA to a supercomputer, and how Linux is reducing the
902 cost of computing dramatically as the fastest growing operating system in the
903 world.  Learn how other Free and Open Source projects, such as office suites,
904 audio and video editing and playing software, relational databases, etc. are
905 created and are freely available.</p>
906
907 <p><a href="http://www.csclub.uwaterloo.ca/~cpbell/">Map and directions</a></p>
908  <h3>Speaker's Biography</h3>
909  <p>Jon "maddog" Hall is the Executive Director of <a href="http://www.li.org/">Linux International</a>,
910 a non-profit association of computer vendors who wish to support and promote
911 the Linux Operating System.  During his career which spans over thirty years,
912 Mr. Hall has been a programmer, systems designer, systems administrator,
913 product manager, technical marketing manager and educator.  He has
914 worked for such companies as Western Electric Corporation, Aetna Life and
915 Casualty, Bell Laboratories, Digital Equipment Corporation, VA Linux Systems,
916 and is currently funded by SGI.</p>
917
918 <p>He has taught at Hartford State Technical College, Merrimack College and
919 Daniel Webster College.  He still likes talking to students over pizza and beer
920 (the pizza can be optional).</p>
921
922 <p>Mr. Hall is the author of numerous magazine and newspaper articles, many
923 presentations and one book, "Linux for Dummies".</p>
924
925 <p>Mr. Hall serves on the boards of several companies, and several non-profit
926 organizations, including the USENIX Association.</p>
927
928 <p>Mr. Hall has traveled the world speaking on the benefits of Open Source
929 Software, and received his BS in Commerce and Engineering from Drexel
930 University, and his MSCS from RPI in Troy, New York.</p>
931
932 <p>In his spare time maddog is working on his retirement project:</p>
933
934 <center>maddog's monastery for microcomputing and microbrewing</center>
935
936    </abstract>
937   </eventitem>
938
939   <eventitem date="2003-11-05" time="4:30 PM - 8:30 PM"
940    room="Grad House Pub (Green Room)" title="CS Pints With Profs">
941    <short>Come have a pint with your favourite CS profs!</short>
942    <abstract>
943    <p>Come meet CS profs in a relaxed atmosphere this Wednesday at
944    the Grad House (by South Campus Hall). This is your chance to meet those CS profs
945    you enjoyed in lectures in person, have a chat with them
946    and find out what they're doing outside the lecture halls.</p>
947
948    <p>We'll be providing free food, including hamburgers and nachos,
949    and the Grad House offers a great selection of drinks.</p>
950
951    <p>If you'd like to invite a particular prof, stop by on the third
952    floor of the MC (outside of the Comfy) to pick up an invitation.</p>
953
954    <p>Persons of all ages are welcome!</p>
955    </abstract>
956   </eventitem>
957
958
959   <eventitem date="2003-10-21" time="4:30 PM - 5:30 PM" room="MC2065"
960    title=".NET &amp; Linux: When Worlds Collide">
961   <short>A talk by James Perry</short>
962   <abstract>
963
964   <p>.NET is Microsoft's new development platform, including amongst
965   other things a language called C# and a class library for various
966   operating system services. .NET aims to be portable, although it is
967   currently mostly only used on Windows systems.</p>
968
969   <p>With the full backing of Microsoft, it seems unlikely that .NET
970   will disappear any time soon. There are several efforts underway to
971   bring .NET to the GNU/Linux platform. Hosted by the Computer Science
972   Club, this talk will discuss a number of the issues surrounding .NET
973   and Linux.</p>
974
975   </abstract>
976   </eventitem>
977
978   <eventitem date="2003-10-22" time="4:30 PM - 5:30 PM" room="MC4061"
979    title="Real-Time Graphics Compilers">
980   <short>Sh is a GPU metaprogramming language developed at the UW
981   Computer Graphics Lab</short>
982   <abstract>
983
984   <p>Sh is a GPU metaprogramming language developed at the University of
985   Waterloo Computer Graphics Lab. It allows graphics programmers to
986   write programs which run directly on the GPU (Graphics Processing
987   Unit) using familiar C++ syntax. Furthermore, it allows
988   metaprogramming of such programs, that is, writing programs which
989   generate other programs, in an easy and natural manner.</p>
990
991   <p>This talk will give a brief overview of how Sh works, the design of
992   its intermediate representation and the (still somewhat simplistic)
993   optimizer that the current reference implementation has and problems
994   with applying traditional compiler optimizations.</p>
995
996   <p>Stefanus Du Toit is an undergraduate student at the University of
997   Waterloo.  He is also a Research Assistant for Michael McCool from the
998   University of Waterloo Graphics Lab. Over the Summer of 2003 Stefanus
999   reimplemented the Sh reference implementation and designed and
1000   implemented the current Sh optimizer.</p>
1001   </abstract>
1002   </eventitem>
1003
1004   <eventitem date="2003-10-17" time="3:00 PM" room="MC3001 (Comfy)"
1005    title="Poster Team Meeting">
1006   <short>More free pizza from the Poster Team</short>
1007   <abstract>
1008   <p>Are you interested in getting involved in the Computer Science
1009   Club?</p>
1010
1011   <p>Come on out to the second meeting of our Poster Team, a bunch of
1012   students helping out with promotion for our events. The agenda for
1013   this meeting will include painting posters, designing event
1014   invitations, and organizing poster runs. Once again, we will be
1015   serving free pizza!</p>
1016
1017   <p>See you there!</p>
1018   </abstract>
1019   </eventitem>
1020
1021   <eventitem date="2003-10-16" time="4:00 PM - 5:30 PM" room="MC2037"
1022    title="UNIX 103: Development Tools">
1023   <short>GCC, GDB, Make</short>
1024   <abstract>
1025   <p>This tutorial will provide you with a practical introduction to GNU 
1026   development tools on Unix such as the gcc compiler, the gdb debugger
1027   and the GNU make build tool.</p>
1028
1029   <p>This talk is geared primarily at those mostly unfamiliar with these
1030   tools.  Amongst other things we will introduce:</p>
1031
1032   <ul>
1033   <li>gcc options, version differences, and peculiarities</li>
1034   <li>using gdb to debug segfaults, set breakpoints and find out what's
1035     wrong</li>
1036   <li>tiny Makefiles that will compile all of your 2nd and 3rd year CS
1037     projects.</li>
1038   </ul>
1039
1040   <p>If you're in second year CS and unfamiliar with UNIX development it
1041   is highly recommended you go to this talk. All are welcome, including
1042   non-math students.</p>
1043
1044   <p>Arrive early!</p>
1045   </abstract>
1046   </eventitem>
1047
1048   <eventitem date="2003-10-02" time="4:00 PM - 5:30 PM" room="MC2037"
1049    title="UNIX 101: Text Editors">
1050   <short>vi vs. emacs: The Ultimate Showdown</short>
1051   <abstract>
1052 <p>
1053 Have you ever wondered how those cryptic UNIX text editors work? Have you
1054 ever woken up at night with a cold sweat wondering "Is it  CTRL-A, or CTRL-X
1055 CTRL-A?" Do you just hate pico with a passion?</p>
1056
1057 <p>Then come to this tutorial and learn how to use vi and emacs!</p>
1058
1059 <p>Basic UNIX commands will also be covered. This tutorial will be especially
1060 useful for first and second year students.</p>
1061
1062   </abstract>
1063   </eventitem>
1064
1065   <eventitem date="2003-10-06" time="4:00 PM" room="MC3001 (Comfy)"
1066    title="Poster Team Meeting">
1067   <short>Join the Poster Team and get Free Pizza!</short>
1068   <abstract>
1069     <ul>
1070     <li>Do you like computer science?</li>
1071     <li>Do you like posters?</li>
1072     <li>Do you like free pizza?</li>
1073     </ul>
1074     <p>If the answer to one of these questions is yes, then come
1075 out to the first meeting of the Computer Science Club Poster Team! The
1076 CSC is looking for interested students to help out with promotion and
1077 publicity for this term's events. We promise good times and free
1078 pizza!</p>
1079   </abstract>
1080   </eventitem>
1081
1082   <eventitem date="2003-09-17" time="4:30 PM" room="MC3001 (Comfy)"
1083    title="CSC Elections">
1084   <short>CSC Fall 2003 Elections</short>
1085   <abstract>
1086    <p>Elections will be held on Wednesday, September 17, 2003 at 4:30 PM in the
1087
1088    Comfy Lounge, MC3001.</p>
1089
1090    <p>I invite you to nominate yourself or others for executive positions,
1091    starting immediately. Simply e-mail me at cro@csclub.uwaterloo.ca 
1092    with the name of the person who is to be nominated and the position
1093    they're nominated for.</p>
1094
1095    <p>Nominees must be full-time undergraduate students in Math. Sorry!</p>
1096
1097    <p>Positions open for elections are:</p>
1098
1099    <ul><li>President: Organises the club, appoints committees, keeps everyone busy.
1100    If you have lots of ideas about the club in general and like bossing
1101    people around, go for it!</li>
1102
1103    <li>Vice President: Organises events, acts as the president if he's not
1104    available. If you have lots of ideas for events, and spare time, go
1105    for it!</li>
1106
1107    <li>Treasurer: Keeps track of the club's finances. Gets to sign cheques
1108    and stuff. If you enjoy dealing with money and have ideas on how to
1109    spend it, go for it!</li>
1110
1111    <li>Secretary: Takes care of minutes and outside correspondence. If you
1112    enjoy writing things down and want to use our nifty new letterhead
1113    style, go for it!</li></ul>
1114
1115    <p>Nominations will be accepted until Tuesday, September 16 at 4:30 PM.</p>
1116
1117    <p>Additionally, a Sysadmin will be appointed after the elections. If you
1118    like working with unix systems and have experience setting up and
1119    maintaining them, go for it!</p>
1120
1121    <p>I hope that lots of people will show up; hopefully we'll have a great
1122    term with plenty of events. We always need other volunteers, so if you
1123    want to get involved just talk to the new exec after the
1124    meeting. Librarians, webmasters, poster runners, etc. are always
1125    sought after!</p>
1126
1127    <p>There will also be free pop.</p>
1128
1129    <p>Memberships can be purchased at the elections or at least half an hour
1130    prior to at the CSC. Only undergrad math members can vote, but anyone can
1131    become a member.</p>
1132
1133   </abstract>
1134   </eventitem>
1135 <!-- Spring 2003 -->
1136
1137   <eventitem date="2003-07-31" time="4:30 PM" room="MC4064"
1138    title="LaTeX and Work Reports">
1139   <short>Writing beautiful work reports</short>
1140   <abstract> 
1141
1142   <p>The work report is a familiar chore for any co-op student.  Not only is
1143   there a report to write, but to add insult to injury, your report is
1144   returned if you do not follow your departmental guidelines.</p>
1145
1146   <p>Fear no more!  In this talk, you will learn how to use LaTeX and a
1147   specially developed class to automatically format your work reports.
1148   This talk is especially useful to Mathematics, Computer Science,
1149   Electrical &amp; Computer Engineering, and Software Engineeering co-op
1150   students about to go on work term.</p>
1151
1152   <p><a
1153   href="http://www.eng.uwaterloo.ca/~sfllaw/programs/uw-wkrpt/">http://www.eng.uwaterloo.ca/~sfllaw/programs/uw-wkrpt/</a></p>
1154
1155   </abstract>
1156   </eventitem>
1157
1158   <eventitem date="2003-07-24" time="4:30 PM" room="MC2037"
1159    title="vi: the visual editor">
1160   <short>It's not 6.</short>
1161   <abstract> 
1162
1163   <p>In 1976, a University of California Berkeley student by the name of
1164   Bill Joy got sick of his text editor, ex.  So he hacked it such that
1165   he could read his document as he wrote it.  The result was "vi", which
1166   stands for VIsual editor.   Today, it is shipped with every modern
1167   Unix system, due to its global influence.</p>
1168
1169   <p>In this talk, you will learn  how to use vi to edit documents
1170   quickly and efficiently.  At the end, you should be able to:</p>
1171
1172   <ul>
1173   <li>Navigate and search through documents</li>
1174   <li>Cut, copy, and paste across documents</li>
1175   <li>Search and replace regular expressions</li>
1176   </ul>
1177
1178   <p>If you do not have a Math computer account, don't panic; one will be lent
1179   to you for the duration of this class.</p>  
1180
1181   </abstract>
1182   </eventitem>
1183
1184   <eventitem date="2003-07-24" time="3:00 PM" room="CSC Office" title="July 
1185   Exec Meeting">
1186   <short> See Abstract for minutes </short>
1187   <abstract>
1188   <pre>
1189 --paying Simon for Sugar
1190 -Unanimous yea.
1191 -ACTION ITEM: Mark
1192         Expense this to MathSoc in lieu of foreign speaker.
1193
1194 --We currently have (including CD-R and pop-income not 
1195 currently in safe) $972.85
1196 -We have $359.02 on budget that we can expense to MathSoc.
1197
1198 --We got MEF money for books and video card. Funding for 
1199 wireless microphone is dependent on whether MFCF is 
1200 willing to host it.
1201 -Funding for casters was denied.
1202 -Shopping for the Video card.
1203 -Expecting it after auguest (Stefanus shopping for it.)
1204 -Will have to hear back regarding the microphone, best to 
1205 delay that now, discuss it with MEF.
1206         -Better to do it this term, so it doesn't get lost.
1207         -Let MFCF know about this concern.
1208 -Regarding books, can be done anytime before September.
1209
1210 --Events feedback
1211         -Generally, Jim Eliot talk when really well.
1212                 -Apparently he was generally offensive.
1213         -When was the LaTeX talk? End of the month.
1214         -Kegger at Jim's place on the 16th.
1215
1216 --Getting people in on the 6th, 7th, 8th for csc commercials
1217 filmed by Jason
1218         -Hang out in here, and he'll make a CSC commercial.
1219         -Co-ordinate when everyone should be in here, so we can email Jason.
1220
1221 --CEO progress
1222         -CEO needs it's database changed to use ISBN as a primary key.
1223         -Needs functionality to take out/return books.
1224
1225 --Mark just entered financial stuff into GNUcash
1226
1227 --Choose CRO for next term.
1228 -Stefanus has expressed desire not to be CRO.
1229 -Gary Simmons was suggested (and he accepted)
1230 -Unanimous yea
1231
1232 --Mike Biggs has to get here naked.
1233         -Four unanimous votes.
1234         -Nakedness only applies to getting here, not being here.
1235
1236
1237 From last meeting:
1238 ACTION ITEM: Biggs and Cass
1239 -get labelmaker tape, masking tape
1240 whiteboard makers, coloured paper, CD sleeves
1241 -keep reciepts for CSC office expenses.
1242
1243 How is the progess on allowing executives and voters to be non-math
1244 members?
1245 -The vote is coming up Monday.
1246 -Proposal: Anyone who is a paying member can be a member
1247         -So you can either do two things:
1248         Pay MathSoc fees, or
1249         Get your faculty society to recognize CSC as a club.
1250
1251 Stefanus wanted to mention that we shoudl talk to Yolanda, 
1252 Craig or Louie about a EYT event for frosh week.
1253 -Organized by Meg.
1254 -Sugar Mountain trying to hook all the Frosh
1255 ACTION ITEM: Jim
1256 -Email Meg
1257
1258 Reminder for Next Year's executive.
1259 -September 16th @ 5:00pm, get a table for Clubs day, and 17th 
1260 and 18th, maintain the booth (full day events).
1261 -Update pamphlets.
1262 ACTION ITEM: Gary
1263 -There should be executive before then 
1264
1265 Note: There needs to be a private section in the CSC Procedures Manual.
1266 (Only accessible by shell)
1267 ACTION ITEM: Simon
1268 -Do it.
1269
1270 ACTION ITEM: Mike
1271 -Talk to Plantops about:
1272 -Locks on doors
1273 -Mounting corkboard.
1274 -Talk about CSC Sign
1275   </pre>
1276   </abstract>
1277
1278   </eventitem>
1279   <eventitem date="2003-06-27" time="2:30 PM" room="DC1302"
1280    title="Friday Flicks">
1281   <short> SIGGRAPH Electronic Theatre Showing </short>
1282   <abstract>
1283   <p>
1284    SIGGRAPH is the ACM's Special Interest Group for Graphics and
1285    simultaneously the world's largest graphics conference and
1286    exhibition, where the cutting edge of graphics research is presented
1287    every year.
1288    </p><p>
1289     With support from UW's Computer Graphics Lab, the CSC invites you to
1290     capture a glimpse of SIGGRAPH 2002. We will be presenting the
1291     Electronic Theatre showings from 2002, demonstrating the best of the
1292     animated, CG-produced movies presented at SIGGRAPH.
1293     </p><p> Don't miss this free showing!</p>
1294   </abstract>
1295   </eventitem>
1296   <eventitem date="2003-07-08" time="4:00 PM" room="MC2065"
1297    title="Mainframes and Linux">
1298   <short>A talk by Jim Elliott. Jim is responsible for IBM's in Open Source
1299   activities and IBM's mainframe operating systems for Canada and the 
1300   Carribbean.</short>
1301   <abstract>
1302   <p>
1303   Linux and Open Source have become a significant reality in the
1304   working world of Information Technology. An indirect result has been a
1305   "rebirth" of the mainframe as a strategic platform for enterprise
1306   computing. In this session Jim Elliott, IBM's Linux Advocate, will provide
1307   an overview of these technologies and an inside look at IBM's participation
1308   in the community. Jim will examine Linux usage on the desktop, embedded
1309   systems and servers, a reality check on the common misconceptions that
1310   surround Linux and Open Source, and an overview of the history and current
1311   design of IBM's mainframe servers.</p>
1312   <p>
1313   Jim Elliott is the Linux Advocate for IBM Canada. He is responsible
1314   for IBM's participation in Linux and Open Source activities and IBM's
1315   mainframe operating systems in Canada and the Caribbean. Jim is a popular
1316   speaker on Linux and Open Source at conferences and user groups across the
1317   Americas and Europe and has spoken to over 300 organizations over the past
1318   three years. Over his 30 years with IBM he has been the co-author of over
1319   15 IBM publications and he also coordinated the launch of Linux on IBM
1320   mainframes in the Americas. In his spare time, Jim is addicted to reading
1321   historical mystery novels and travel to their locales.
1322   </p>
1323   <p><a href="http://www.vm.ibm.com/devpages/jelliott/events.html">Slides</a>
1324   </p>
1325   </abstract>
1326   </eventitem>
1327   <eventitem date="2003-07-04" time="3:30 PM" room="University of Guelph"
1328    title="Guelph Trip">
1329   <short>Come Visit the University of Guelph's Computer Science Club</short>
1330   <abstract><p>
1331    The University of Waterloo Computer Science Club is going to visit the
1332    University of Guelph Computer Science Club.  There will be a talk given
1333    as well as dinner with a fun social atmosphere.</p><p>Drivers Wanted</p>
1334    <p>Cancelled -- sorry Guelph cancelled on us.</p>
1335   </abstract>
1336   </eventitem>
1337   <eventitem date="2003-07-17" time="4:30 PM" room="MC4064"
1338    title="Sh">
1339   <short>Metaprogramming your way to stunning effects.</short>
1340   <abstract>
1341   <p>
1342   Modern graphics processors allow developers to upload small "shader
1343   programs" to the GPU, which can be executed per-vertex or even
1344   per-pixel during the rendering. Such shaders allow stunning effects to
1345   be performed in real-time, but unfortunately aren't very easy to
1346   program since one generally has to write them at the assembly level.
1347   </p><p>
1348   Recently a few high-level languages for shader programming have become
1349   available. Sh, a result of research at UW, is one such language. It
1350   allows programming powerful shaders in simple and intuitive ways. Sh
1351   is particularily interesting because of the way it is
1352   implemented. Instead of coming up with a language grammar and writing
1353   a full-fledged compiler, Sh is implemented as a C++ library, and
1354   shader programs are effectively written in C++. The actual compilation
1355   then takes place in a manner similar to JIT (Just-in-time)
1356   compilers. This has many advantages over the traditional approach,
1357   including C++'s familiar syntax for users, and much less work for the
1358   Sh implementers.
1359   </p><p>
1360   In this talk I will give an overview of GPUs and the Sh language as
1361   well as some interesting details on how Sh was implemented.
1362   </p><p> <!-- Is there a bio tag -->
1363   Stefanus Du Toit is a research assistant at the University of
1364   Waterloo. He has implemented the current version of Sh from scratch
1365   and is actively developing it under supervision of Michael McCool, the
1366   original designer of the language.
1367   </p>
1368   </abstract>
1369   </eventitem>
1370   <eventitem date="2003-06-19" time="4:30 PM" room="MC2037"
1371    title="vi: the visual editor">
1372   <short>It's not 6.</short>
1373   <abstract> 
1374
1375   <p>In 1976, a University of California Berkeley student by the name of
1376   Bill Joy got sick of his text editor, ex.  So he hacked it such that
1377   he could read his document as he wrote it.  The result was "vi", which
1378   stands for VIsual editor.   Today, it is shipped with every modern
1379   Unix system, due to its global influence.</p>
1380
1381   <p>In this talk, you will learn  how to use vi to edit documents
1382   quickly and efficiently.  At the end, you should be able to:</p>
1383
1384   <ul>
1385   <li>Navigate and search through documents</li>
1386   <li>Cut, copy, and paste across documents</li>
1387   <li>Search and replace regular expressions</li>
1388   </ul>
1389
1390   <p>If you do not have a Math computer account, don't panic; one will be lent
1391   to you for the duration of this class.</p>  
1392
1393   </abstract>
1394   </eventitem>
1395
1396   <eventitem date="2003-06-12" time="3:30 PM" room="MC3036 CSC Office" title="June 12 Exec Meeting">
1397   <short>Have an issue that should be brought up? We'd love to hear it!</short>
1398   <abstract>
1399   <pre>
1400   
1401 Budget: All the money we requested
1402         --No money from Pints from Profs
1403         --MathSoc has promised us $1250
1404         
1405 Feedback from Completed Events
1406         UNIX Talks: 17 people for first
1407                         --12 people for second
1408                         --Things going well
1409                         --Last talk today
1410                         --VI next week
1411         IPsec
1412         --Sparse crowd
1413         --People Jim didn't know talked to him for 1/2 hour
1414
1415         History of CSC talk went well
1416         --Good variety of people
1417
1418         Pints with Profs
1419         --NO CS Profs
1420         --Only 1 E&amp; CE prof
1421         --Only 2 Math profs
1422         --Jim will harrass the profs at the School of CS Council meeting.
1423         
1424         We're starting to fall behind in planning
1425         
1426         RoShamBo rules
1427         --Got a web site up
1428         --Might have to move RSB back
1429         --International site has a few test samples
1430         --Stefanus had some ideas
1431         --Coding will probably take an afternoon/evening
1432         --We need volunteers to run the competition
1433         --We have volunteers to code: Phil and Stefanus
1434         
1435         ACTION ITEM: Phil and Stefanus
1436         --code whatever you volunteered to code for.
1437         
1438         --Mike intends to visit classes and directly advertise
1439         --Email Christina Hotz 
1440
1441         --GH guy: Mike has an abstract, will have posters by tomorrow
1442         
1443         CSC Movie Night
1444         --Mathnet, Hackers, Wargames, Tron
1445         --Mike will get a room
1446         --Will be closed member
1447
1448         Mike McCool is offering rooms for showing SIGGRAPH 
1449         ACTION ITEM: Jim
1450         -check with Mike McCool.
1451         
1452         ACTION ITEM: Mike 
1453         -Make posters for Movie Nights
1454
1455         When is other movie night? (Will plan some time in July)
1456
1457         Who is our foreign speaker?
1458         Action Item: jelliot@ca.ibm.com (Check name first) about 
1459         getting a foreign speaker -- Note: Has already been contacted.
1460
1461         Simon got money from Engsoc
1462
1463         Cass meeds coloured paper (CSC is out)
1464
1465         ACTION ITEM: Cass and Mark 
1466         --get labelmaker tape, masking tape, 
1467         whiteboard makers, coloured paper 
1468         --keep reciepts for CSC office expenses
1469
1470         NOTICE: Mike is now Imapd
1471
1472         Simon distibuted budget list
1473         Mark got the money from Mathsoc for last budget, deposited it.
1474
1475         ACTION ITEM:Mark
1476         --Get MEF funding by July 4th (equipment)
1477         ACTION ITEM: Simon
1478         --Get WEEF funding by June 27th (book)
1479
1480         Jim still working on allowing executives and voters to be 
1481         non-math members
1482
1483         We get free photocopying from MathSoc
1484         ACTION ITEM: Mike 
1485         --write down code for free photocopying from MathSoc
1486         
1487         Simon has been able to get into the cscdisk account, still 
1488         looking into getting into the cscceo account.
1489
1490         Damien got an e-mail stating that the files for cscdisk are 
1491         out of date.
1492         
1493         ACTION ITEM: Simon
1494         --provide SSH key to Phil for getting into cscdisk, cscceo, etc...
1495         --Renumber bootup scripts for sugar and powerpc so that they 
1496         boot up happily.
1497
1498         ACTION ITEM: Mike needs to do all the plantops stuff again.
1499
1500         ACTION ITEM: Mike -- &quot;Stapler if you say please&quot; sign.
1501
1502         CVS Tree for CEO has been exported.
1503         Damien has volunteered to finish CEO (found by Cass)
1504
1505         All books with barcodes have been scanned
1506         All books without barcodes need to be bar-coded.
1507
1508         ACTION ITEM: Mark
1509         --Find a Credit-card with a $500 or less limit.
1510
1511         Note: There needs to be a private section in the 
1512         CSC Procedures Manual. (Only accessible by shell)
1513
1514         Stefanus Wanted to mention that we should talk to 
1515         Yolanda, Craig or Louie about a EYT event for Frosh Week.
1516   </pre>
1517   </abstract>
1518   </eventitem>
1519
1520   <eventitem date="2003-06-10" time="4:30 PM" room="MC2066"
1521    title="A Brief History of Computer Science">
1522   <abstract>
1523
1524 <p>War, insanity, espionage, beauty, domination, sacrifice, and tragic
1525 death... not what one might associate with the history of computer
1526 science. In this talk I will focus on the origin of our discipline in
1527 the fields of engineering, mathematics, and science, and on the
1528 complicated personalities that shaped its evolution. No advanced
1529 technical knowledge is required.</p>
1530
1531   </abstract>
1532   </eventitem>
1533
1534   <eventitem date="2003-06-09" time="5:00 - 9:00 PM" room="The Grad House"
1535    title="Pints with Profs!">
1536   <short>Get to know your profs and be the envy of your friends!</short>
1537   <abstract>
1538
1539 <p>Come out and meet your professors!!  This is a great opportunity to
1540 meet professors for Undergraduate Research jobs or to find out who you might
1541 have for future courses.  One and all are welcome!</p>
1542
1543 <p>Best of all... free food!!!</p>
1544
1545   </abstract>
1546   </eventitem>
1547
1548   <eventitem date="2003-05-29" time="4:30 PM" room="MC2037"
1549    title="Unix 101: First Steps With Unix">
1550   <short>Learn Unix and be the envy of your friends!</short>
1551   <abstract> 
1552
1553   <p>This is the first in a series of seminars that cover the use of the
1554   Unix Operating System.  Unix is used in a variety of applications, both
1555   in academia and industry. We will provide you with hands-on experience
1556   with the Math Faculty's Unix environment in this seminar.</p> 
1557
1558   <p>Topics that will be discussed include:</p>
1559
1560   <ul>
1561   <li>Navigating the Unix environment</li>
1562   <li>Using common Unix commands</li>
1563   <li>Using the PICO text editor</li>
1564   <li>Reading electronic mail and news with PINE</li>
1565   </ul>
1566
1567   <p>If you do not have a Math computer account, don't panic; one will be lent
1568   to you for the duration of this class.</p>  
1569
1570   </abstract>
1571   </eventitem>
1572
1573   <eventitem date="2003-06-05" time="4:30 PM" room="MC2037"
1574    title="Unix 102: Fun With Unix">
1575   <short>Talking to your Unix can be fun and profitable</short>
1576   <abstract> 
1577
1578   <p>This is the second in a series of seminars that cover the use of the
1579   Unix Operating System.  Unix is used in a variety of applications, both in
1580   academia and industry.  We will provide you with hands-on experience with
1581   the Math Faculty's Unix environment in this tutorial.</p>
1582
1583   <p>Topics that will be discussed include:</p>
1584
1585   <ul>
1586   <li>Interacting with Bourne and C shells</li>
1587   <li>Editing text with the vi text editor</li>
1588   <li>Editing text with the Emacs display editor</li>
1589   <li>Multi-tasking and the screen multiplexer</li>
1590   </ul>
1591
1592   <p>If you do not have a Math computer account, don't panic; one will be
1593   lent to you for the duration of this class</p>
1594
1595   </abstract>
1596   </eventitem>
1597
1598   <eventitem date="2003-06-12" time="4:30 PM" room="MC2037"
1599    title="Unix 103: Scripting Unix">
1600   <short>You too can be a Unix taskmaster</short>
1601   <abstract> 
1602
1603   <p>This is the third in a series of seminars that cover the use of the
1604   Unix Operating System.  Unix is used in a variety of applications, both in
1605   academia and industry.  We will provide you with hands-on experience with
1606   the Math Faculty's Unix environment in this tutorial.</p>
1607
1608   <p>Topics that will be discussed include:</p>
1609
1610   <ul>
1611   <li>Shell scripting</li>
1612   <li>Searching through text files</li>
1613   <li>Batch editing text files</li>
1614   </ul>
1615
1616   <p>If you do not have a Math computer account, don't panic; one will be
1617   lent to you for the duration of this class</p>
1618
1619   </abstract>
1620   </eventitem>
1621
1622 <eventitem date="2003-05-22" time="4:30 PM" room="MC3036 CSC Office" title="May 22 Exec Meeting">
1623 <short>The execs discuss what needs discussion</short>
1624 <abstract>
1625 <pre>
1626
1627 Minutes for CSC Exec Meeting
1628 May 22, 2003
1629
1630
1631 * Add staff to burners group.
1632         -- Only office staff (people who do stuff) on burners list
1633         -- No objections from executives
1634
1635 * We still need a webmaster, imapd
1636         -- Action Item: Mike
1637                 --Check for pop delivery services (Like Grocery Gateway)
1638                 so that we can replace imapd with an automated cronjob
1639                 -- If this gets implemented, we must make sure that 
1640                 someone is around to receive the pop whenever it is 
1641                 delivered. 
1642
1643 * Budgets
1644         Action Item: Simon
1645                 -- Make sure execs receive a copy of the proposed budget
1646         Action Item: Mark
1647                 -- Look into claiming money from Mathsoc for the last 
1648                 term.
1649         --Will be looked over the week after next Monday at the Mathsoc
1650         Budget meeting.
1651         --June 27th is the WEF (Engineering Endowment Fund) deadline
1652         --EngSoc proposal for donations by the end of the month
1653         -- Around 15 events planned
1654                 --Foreign Speaker
1655                         --CS Departmant will pay for flight
1656                         -- We can pay local expenses
1657                 --Pints with Profs
1658                 --Ro-Sham-Bo
1659                 
1660 *Changes in the MathSoc Clubs Policy
1661         Action Item: Jim and Stefanus
1662                 --Bring thus up with MathSoc
1663                 --Might be good to talk to Bioinformatics about this, as 
1664                 they have science faculty members to take care of as well. 
1665         --Major issue: People who revoke their Mathsoc fees can still be
1666         voting  members
1667         --We want it so that only people who have paid dues to Mathsoc 
1668         can vote.
1669         --Execs should not take back fees, as that is bad form.
1670         --All execs unanimously agreed with this proposal
1671
1672 *Confirming that we have free printing and photocopying
1673         Action Item: Mark
1674                 --Does Faculty of Math billing code apply to CSC 
1675                 (as Faculty of Math department?)
1676                 -- Procedures manual has a billing code, but it should 
1677                 be confirmed.
1678                 -- Ask MUO, then Shirley after that.
1679         Action Item: Simon
1680                 --Apparently there is a special Watcard that provides 
1681                 free printing from MFCF
1682                 --We do not know what account it is mapped to, 
1683                 or the password.
1684
1685 * Getting csc_disk, csc, csc_ceo accounts on undergrad to work again.
1686         Action Item: Phil
1687                 -- Get csc-disk back up for student use.
1688                 -- What group permissions do we need?
1689                 -- CSC-Disk should be used as a repository for custom 
1690                 window managers, Mozilla, etc... (selling factor for
1691                 CSC accounts)
1692                 -- We should also have an announcement (MOTD, perhaps?) 
1693                 that we are providing and supporting this software.
1694                         --Consider: Having university-wide accessible 
1695                         binaries might be a pain, as different machines
1696                         might require different compilations.
1697                 -- CSC-Disk is full of user data. Should that be blown away?
1698
1699 *Getting locker #7 from MathSoc (Don't we already have lockers 788 and 
1700 789?)
1701         --Why were the locks snipped? (Bring up at council meeting)
1702         --We would prefer one combo-lock and one key-lock.
1703
1704 * Review of the CSC office organization
1705         Action Item: Damien
1706                 --Give Mike sudo access for shutdown
1707                         --Will be rewiring stuff on Saturday
1708                                 --involves re-plugging machines
1709         Action Item: Simon
1710                 --Get rubber wheels for chairs
1711         
1712         Action Item: Mike
1713                 -- Ask PlantOps about:
1714                         --Waxing floors
1715                         --Installing Electronic Lock (asap)
1716                                 --According to Faculty of Math, 
1717                                 we shouldn't need keys.
1718                                 --Currently, we still need keys
1719                                 --It is kosher to install Electronic lock
1720                                 --This provides access right control as 
1721                                 compared to key-control.                
1722                                 --Might be long term project.
1723                                 --Will green men do it?
1724                         --Steam-clean chairs (at least once a term)
1725                         --Cork-board
1726                         --Making ugly wall prettier
1727                                 --PlantOps knows about office 
1728                                 organization, making environment better.
1729         --Whiteboards need to be put up
1730         --Proposal: Cork-board on pillar (no objections)
1731         --Metal frames on Whiteboard will be in least annoying place
1732
1733 *Do we provide public stapler access?
1734         --People are often unappreciative and rude
1735         --Sign -  "Stapler if you say please" -- Unanimously voted 
1736                                                  stapler policy
1737         
1738 *MathSoc Sign
1739         --Action Item: Jim
1740                 --Find out where to get CSC sign before Monday so we 
1741                 can claim it in old budget. 
1742
1743 * Librarian's Report
1744         --Action Item: Jim
1745                 --Find perl volunteer to finish CEO
1746                 --Force Stefanus to export CVS tree and put onto Peri
1747         
1748         --Books were scanned into system with help of Mark
1749         --All books with valid barcodes entered into system on 
1750         May 20th
1751         --Books without valid barcodes are not in system
1752                 --Someone needs to do it
1753         --Plan is to implement Dewey decimal system
1754                 --May be inefficient as all books are about CS
1755                 --We will figure out a system later
1756         --No plans to purchase new books
1757         --Librarian's Request:  Office Staff should not lend out books 
1758         that do not have barcodes (No objects to request) 
1759         --We are still using /media/iso/request to track books
1760         --Should be charge late fees for books?
1761         --We should have money in budget for repairing,maintaining books
1762         --Before spending money on maintaining books, check if DC will 
1763         do it
1764                 --will it be cheaper/easier/better?
1765
1766 *Setting up extra quota for fun and profit.
1767         -- We don't implement quota properly right now
1768         -- Low demand for extra quota
1769         -- Counterpoint: Old CSC made tons of money
1770         -- Counter-counter-point: It's not that necessary for extra 
1771         quota nowadays. 
1772         -- Executives voted against proposal.
1773
1774 *Jim will spam with an update about the term
1775         --Consider making it opt-in
1776         --One email from a service you are using should be considered 
1777         reasonable mass mailing
1778
1779 *Should Jim bring anything up at the MathSoc meeting?**
1780         -- Has a list
1781
1782 * Student branches for ACM and IEEE
1783         Action Item: Gaelan
1784                 --Contact IEEE Computing Society in UW and ask if they want 
1785                 to merge or transfer society to us
1786         --Simon volunteers to be put down as exec for ACM
1787                 --ACM rules state requirement that exec is a ACM member
1788         --Do we renew Calum's ACM membership?
1789                 --Yes (3 Yes; 1 No; 1 Abstention)
1790         --ACM membership money in budget
1791         --ACM Student chapter form has not come in
1792
1793 * What to do with the donated Procedures Manual?
1794         --Term Task for webpage:
1795                 --Put procedures manual on web-page.
1796                 --Merge with current manual
1797         --We don't have a hard copy
1798         --Would be a good thing to read.
1799         --Many parts need updating
1800
1801 </pre>
1802 </abstract>
1803 </eventitem>
1804
1805 <eventitem date="2003-05-14" time="4:30 PM" room="MC3001 Comfy Lounge"
1806  title="Spring 2003 Elections">
1807  <short>Come on out and vote for your exec!</short>
1808  <abstract>
1809 <p>Elections will be held on Wednesday, May 14, 2003 at 4:30 PM in the
1810 Comfy Lounge, MC3001.</p>
1811
1812 <p>I invite you to nominate yourself or others for executive positions,
1813 starting immediately. Simply e-mail me at sjdutoit@uwaterloo.ca or
1814 cro@csclub.uwaterloo.ca with the name of the person who is to be
1815 nominated and the position they're nominated for.</p>
1816
1817 <p>Nominees must be full-time undergraduate students in Math. Sorry!</p>
1818
1819 <p>Positions open for elections are:</p>
1820
1821 <ul>
1822 <li>
1823 President: Organises the club, appoints committees, keeps everyone busy.
1824 If you have lots of ideas about the club in general and like bossing
1825 people around, go for it!
1826 </li>
1827
1828 <li>
1829 Vice President: Organises events, acts as the president if he's not
1830 available. If you have lots of ideas for events, and spare time, go
1831 for it!
1832 </li>
1833
1834 <li>
1835 Treasurer: Keeps track of the club's finances. Gets to sign cheques
1836 and stuff. If you enjoy dealing with money and have ideas on how to
1837 spend it, go for it!
1838 </li>
1839
1840 <li>
1841 Secretary: Takes care of minutes and outside correspondence. If you
1842 enjoy writing things down and want to use our nifty new letterhead
1843 style, go for it!
1844 </li>
1845 </ul>
1846
1847 <p>Nominations will be accepted until Tuesday, May 13 at 4:30 PM.</p>
1848
1849 <p>Additionally, a Sysadmin will be appointed after the elections. If you
1850 like working with unix systems and have experience setting up and
1851 maintaining them, go for it!</p>
1852
1853 <p>I hope that lots of people will show up; hopefully we'll have a great
1854 term with plenty of events. We always need other volunteers, so if you
1855 want to get involved just talk to the new exec after the
1856 meeting. Librarians, webmasters, poster runners, etc. are always
1857 sought after!</p>
1858
1859 <p>There will also be free pop, and if I remember, timbits :).</p>
1860
1861 <p>Memberships can be purchased at the elections. Only undergrad math
1862 members can vote, but anyone can become a member.</p>
1863
1864 <p>Don't forget! Mark it on your calendar/wrist watch/PDA/brain implant!</p>
1865
1866  </abstract>
1867 </eventitem>
1868
1869 <!-- Winter 2003 -->
1870
1871   <eventitem date="2003-02-04" time="4:30 PM" room="MC2037"
1872    title="Unix 101 Tutorial">
1873   <short>Learn Unix and be the envy of your friends!</short>
1874   <abstract> 
1875
1876   <p>This is the first in a series of seminars that cover the use of the
1877   UNIX Operating System.  UNIX is used in a variety of applications, both
1878   in academia and industy. We will provide you with hands-on experience
1879   with the Math Faculty's UNIX environment in this seminar.</p> 
1880
1881   <p>Topics that will be discussed include:</p>
1882
1883   <ul>
1884   <li> Navigating the UNIX environment</li>
1885   <li> Using common UNIX commands</li>
1886   <li>Using the PICO text editor</li>
1887   <li>Reading electronic mail and news with PINE</li>
1888   </ul>
1889
1890   <p>If you do not have a Math computer account, don't panic; one will be lent
1891   to you for the duration of this class.</p>  
1892
1893   </abstract>
1894   </eventitem>
1895
1896   <eventitem date="2003-02-11" time="4:30 PM" room="MC2037"
1897    title="Unix 102 Tutorial">
1898   <short>Learn more Unix and be the envy of your friends!</short>
1899   <abstract> 
1900
1901   <p>Abstract to come soon.</p>
1902
1903   </abstract>
1904   </eventitem>
1905
1906   <eventitem date="2003-02-18" time="4:30 PM" room="MC2037"
1907    title="Unix 103 Tutorial">
1908   <short>Learn more Unix and be the envy of your friends!</short>
1909   <abstract> 
1910
1911   <p>Abstract to come soon. </p>
1912
1913   </abstract>
1914   </eventitem>
1915
1916   <eventitem date="2003-01-13" time="6:00 PM" room="MC3001"
1917     title="W03 Elections">
1918     <short>Come out and vote for the new exec!</short>
1919    <abstract>
1920
1921 <p>This term's elections will take place on Monday, January 13 at 6:00 PM in the
1922 MC "comfy lounge" (MC3001). Nominations are open from now on (Thursday,
1923 January 2) until 4:30 PM of the day before elections (Sunday, January 12).
1924 In order to nominate someone you can either e-mail me directly, by depositing
1925 a form with the required information in the CSC mailbox in the Mathsoc office
1926 or by writing the nomination and clearly marking it as such on the large
1927 whiteboard in the CSC office. E-mail is probably the best choice.
1928 Please include the name of the person to be nominated as well as the position
1929 you wish to nominate them for.</p>
1930
1931 <p>Candidates must be full members of the club. This means they must have paid
1932 their membership for the given term and (due to recent changes in the
1933 constitution) must be full-time undergraduate math students.
1934 The same requirements hold for those voting. Please bring your Watcard to
1935 the elections so that I can verify this. I will have a list of members with
1936 me also.</p>
1937
1938 <p>The positions open are:</p>
1939
1940 <p><b>President</b> -- appoints all commitees of the club, calls and presides at all
1941 meetings of the club and audits the club's financial records. Really, this
1942 is the person in charge.</p>
1943
1944 <p><b>Vice President</b> -- assumes President's duties in case he/she is absent,
1945 plans and coordinates events with the programmes committee and assumes any
1946 other duties delegated by the President.
1947 This is a really fun job if you enjoy coordinating events!</p>
1948
1949 <p><b>Secretary</b> -- keeps minutes of the meetings and cares for any correspondence.
1950 A fairly light job, good choice if you just want to see what being an exec
1951 is all about.</p>
1952
1953 <p><b>Treasurer</b> -- maintains all the finances of the club.
1954 If you like money and keeping records, this is the job for you!</p>
1955
1956 <p>Additionally a Systems Administrator will be picked by the new executive.</p>
1957
1958 <p>Last term was a great term for the CSC -- many events, some office renovations
1959 and a much improved image were all part of it. I hope to see the next term's
1960 exec continue this. If you're interested in seeing this happen, do consider
1961 going for a position, or helping out as office staff or on one of the
1962 committees.</p>
1963
1964 <p>Anyways, hopefully I'll see many of you at the elections.
1965 Remember: Monday, January 13, 6:00 PM, MC3001/Comfy Lounge.</p>
1966
1967 <p>If you have any further questions don't hesitate to contact the CRO,
1968       Stefanus Du Toit <a href="mailto:sjdutoit@uwaterloo.ca">by e-mail</a>.</p>
1969     </abstract>
1970   </eventitem>
1971
1972   <eventitem date="2003-01-23" time="6:30 PM" room="MC1085"
1973     title="Regular Expressions">
1974     <short>Find your perfect match</short>
1975     <abstract>
1976
1977     <p>Stephen Kleene developed regular expressions to describe what he
1978     called <q>the algebra of regular sets.</q>  Since he was a pioneering
1979     theorist in computer science, Kleene's regular expressions soon made
1980     it into searching algorithms and from there to everyday tools.</p>
1981
1982     <p>Regular expressions can be powerful tools to manipulate text.
1983     You will be introduced to them in this talk.  As well, we will go
1984     further than the rigid mathematical definition of regular
1985     expressions, and delve into POSIX regular expressions which are
1986     typically available in most Unix tools.</p>
1987
1988     </abstract>
1989   </eventitem>
1990
1991   <eventitem date="2003-01-30" time="6:30 PM" room="MC1085"
1992     title="sed &amp; awk">
1993     <short>Unix text editing</short>
1994     <abstract>
1995
1996     <p><i>sed</i> is the Unix stream editor.  A powerful way to
1997     automatically edit a large batch of text.  <i>awk</i> is a
1998     programming language that allows you to manipulate structured data
1999     into formatted reports.</p>
2000
2001     <p>Both of these tools come from early Unix, and both are still
2002     useful today.  Although modern programming languages such as Perl,
2003     Python, and Ruby have largely replaced the humble <i>sed</i> and
2004     <i>awk</i>, they still have their place in every Unix user's
2005     toolkit.</p>
2006
2007     </abstract>
2008   </eventitem>
2009
2010   <eventitem date="2003-02-06" time="6:30 PM" room="MC1085"
2011     title="LaTeX: A Document Processor">
2012     <short>Typesetting beautiful text</short>
2013     <abstract>
2014
2015     <p>Unix was one of the first electronic typesetting platforms.  The
2016     innovative AT&amp;T <i>troff</i> system allowed researches at Bell
2017     Labs to generate high quality camera-ready proofs for their papers.
2018     Later, Donald Knuth invented a typesetting system called
2019     T<small>E</small>X, which was far superior to other typesetting
2020     systems in the 1980s.  However, it was still a typesetting language,
2021     where one had to specify exactly how text was to be set.</p>
2022
2023     <p>L<sup><small>A</small></sup>T<small>E</small>X is a macro package
2024     for the T<small>E</small>X system that allows an author to describe
2025     his document's function, thereby typesetting the text in an
2026     attractive and correct way.  In addition, one can define semantic
2027     tags to a document, in order to describe the meaning of the
2028     document; rather than the layout.</p>
2029
2030     </abstract>
2031   </eventitem>
2032
2033   <eventitem date="2003-02-13" time="6:30 PM" room="MC1085"
2034     title="LaTeX: Reports">
2035     <short>Writing reports that look good.</short>
2036     <abstract>
2037
2038     <p>Work term reports, papers, and other technical documents can be
2039     typeset in L<sup><small>A</small></sup>T<small>E</small>X to great
2040     effect.  In this session, I will provide examples on how to typeset
2041     tables, figures, and references.  You will also learn how to make
2042     tables of contents, bibliographics, and how to create footnotes.</p>
2043
2044     <p> I will also examine various packages of 
2045     L<sup><small>A</small></sup>T<small>E</small>X that can help you 
2046     meet requirements set by users of inferior typesetting systems.  
2047     These include double-spacing, hyphenation and specific margin 
2048     sizes.</p>
2049
2050     </abstract>
2051   </eventitem>
2052
2053   <eventitem date="2003-02-20" time="6:30 PM" room="MC1085"
2054     title="LaTeX: Beautiful Mathematics">
2055     <short>LaTeX =&gt; fun</short>
2056     <abstract>
2057
2058     <p>It is widely acknowledged that the best system by which to
2059     typeset beautiful mathematics is through the T<small>E</small>
2060     typesetting system, written by Donald Knuth in the early 1980s.</p>
2061
2062     <p>In this talk, I will demonstrate
2063     L<sup><small>A</small></sup>T<small>E</small>X and how to typeset
2064     elegant mathematical expressions.</p>
2065
2066     </abstract>
2067   </eventitem>
2068
2069   <eventitem date="2003-02-27" time="6:00 PM" room="MC1085"
2070     title="The BSD License Family">
2071     <short>Free for all</short>
2072     <abstract>
2073
2074     <p>Before the GNU project ever existed, before the phrase
2075     "Free Software" was ever coined, students and researchers
2076     at the University of California, Berkeley were already
2077     practising it.  They had acquired the source cdoe to a
2078     little-known operating system developed at AT&amp;T
2079     Bell Laboratories, and were creating improvments at a
2080     ferocious rate.</p>
2081
2082     <p>These improvements were sent back to Bell Labs, and
2083     shared to other Universities.  Each of them were licensed
2084     under what is now known as the "Original BSD license".  Find
2085     out what this license means, its implications, and what are
2086     its decendents by attending this short talk.</p>
2087
2088     </abstract>
2089   </eventitem>
2090
2091   <eventitem date="2003-02-27" time="6:30 PM" room="MC1085"
2092     title="The GNU General Public License">
2093     <short>The teeth of Free Software</short>
2094     <abstract>
2095
2096     <div style="font-style: italic"><blockquote>
2097       The licenses for most software are designed to take away your
2098       freedom to share and change it. By contrast, the GNU General
2099       Public License is intended to guarantee your freedom to share and
2100       change free software---to make sure the software is free for all
2101       its users.
2102       <br />
2103       <div style="text-align:right">--- Excerpt from the GNU GPL</div>
2104     </blockquote></div>
2105     
2106     <p> The GNU General Public License is one of the most influencial
2107     software licenses in this day.  Written by Richard Stallman for the
2108     GNU Project, it is used by software developers around the world to
2109     protect their work.</p>
2110
2111     <p>Unfortunately, software developers do not read licenses
2112     thoroughly, nor well.  In this talk, we will read the entire GNU GPL
2113     and explain the implications of its passages.  Along the way, we
2114     will debunk some myths and clarify common misunderstandings.</p>
2115
2116     <p>After this session, you ought to understand what the GNU GPL
2117     means, how to use it, and when you cannot use it.  This session
2118     should also give you some insight into the social implications of
2119     this work.</p>
2120
2121     </abstract>
2122   </eventitem>
2123
2124   <eventitem date="2003-03-13" time="6:30 PM" room="MC1085"
2125     title="XML">
2126     <short>Give your documents more markup</short>
2127     <abstract>
2128
2129     <p>XML is the <q>eXtensible Markup Language,</q> a standard
2130     maintained by the World Wide Web Consortium.  A descendant of IBM's
2131     SGML.  It is a metalanguage which can be used to define markup
2132     languages for semantically describing a document.</p>
2133
2134     <p>This talk will describe how to generate correct XML documents,
2135     and auxillary technologies that work with XML.</p>
2136
2137     </abstract>
2138   </eventitem>
2139
2140   <eventitem date="2003-03-20" time="6:30 PM" room="MC1085"
2141     title="XSLT">
2142     <short>Transforming your documents</short>
2143     <abstract>
2144
2145     <p>XSLT is the <q>eXtended Stylesheet Language Transformations,</q>
2146     a language for transforming XML documents into other XML
2147     documents.</p>
2148
2149     <p>XSLT is used to manipulate XML documents into other forms: a sort
2150     of glue between data formats.  It can turn an XML document into an
2151     XHTML document, or even an HTML document.  With a little bit of
2152     hackery, it can even be convinced to spit out non-XML conforming
2153     documents.</p>
2154
2155     </abstract>
2156   </eventitem>
2157
2158   <eventitem date="2003-03-24" time="8:00 PM" 
2159     room="Humanities Theatre, Hagey Hall"
2160     title="Judy, or What Is It Like To Be A Robot?">
2161     <short>Held in co-operation with the UW Cognitive Science Club</short>
2162     <abstract>
2163
2164     <p>A lot of claims have been made lately about the intelligence of 
2165     computers.  Some researchers say that computers will eventually attain 
2166     super-human intelligence.  Others call thse claims... um, poppycock.  
2167     Oddly enough, in the search for the truth of the matter, both camps 
2168     have overlooked an obvious strategy: interviewing a computer and asking 
2169     her opinion.</p>
2170
2171     <p>"Judy is as much fun as a barrel of wind-up cymbal-monkeys, and 
2172     lots more entertaining." --- Bill Rodriguez, <i>Providence Phoenix</i></p>
2173
2174     <p>"Tom Sgouros's witty play, co-starring the charming robot Judy, is an
2175     imagination stretcher that delights while it exercises your mind.  If you
2176     think you can't imagine a conscious robot, you're wrong---you can,
2177     especially once you've met Judy." --- Daniel C. Dennett,
2178     author of <i>Consciousness Explained</i>, <i>Brainchildren</i>,
2179     &amp;c.</p>
2180
2181     <p>"...an engrossing evening...  Real questions about 
2182     consciousness, freedom to act, the relationship between the creator 
2183     and the created are woven into a bravura performance." --- Will 
2184     Stackman, <i>Aislesay.com</i></p>
2185
2186     <p>Sponsored by the Mathematics Society, the Federation of Students, the
2187     Arts Student Union, the Graduate Student Association, and the Department of
2188     Philosophy. Tickets available at the Humanities box office (888-4908) and
2189     the offices of the Psychology Society and the Computer Science Club for
2190     $5.50.  For
2191     more information: <a
2192     href="http://www.csclub.uwaterloo.ca/cogsci/">http://www.csclub.uwaterloo.ca/cogsci</a>.</p>
2193
2194     </abstract>
2195   </eventitem>
2196
2197   <eventitem date="2003-03-25" time="4:30 PM" room="MC2065"
2198     title="Stream Processing">
2199     <short>A talk by Assistant Professor Michael McCool</short>
2200     <abstract>
2201
2202     <p>Stream processing is an enhanced version of SIMD processing that
2203     permits efficient execution of conditionals and iteration.  Stream
2204     processors have many similarities to GPUs, and a hardware prototype,
2205     the Imagine processor, has been used to implement both OpenGL and
2206     Renderman.</p>
2207
2208     <p>It is possible that GPUs will acquire certain properties
2209     of stream processors in the future, which should make them easier
2210     to use and more efficient for general-purpose computation that includes
2211     data-dependent iteration and conditionals.</p>
2212
2213     </abstract>
2214   </eventitem>
2215
2216   <eventitem date="2003-03-26" time="6:00 PM" room="MC2065"
2217     title="Abusing the C++ Compiler">
2218     <short>Abusing template metaprogramming in C++</short>
2219     <abstract>
2220
2221     <p>Templates are a useful feature in C++ when it comes to writing
2222     type-independent data structures and algorithms.  But that's not all
2223     they can be used for.  Essentially, it is possible to write certain
2224     programs in C++ that execute completely at compile-time rather
2225     than run-time.  Combined with some optimisations this is an interesting
2226     twist on regular C++ programming.</p>
2227
2228     <p>This talk will give a short overview of the features of templates
2229     and then go on to describe how to "abuse" templates to perform complex
2230     computations at compile time. The speaker will present three programs of
2231     increasing complexity which execute at compile time. First a factorial
2232     listing program, then a prime listing program will be presented. Finally
2233     the talk will conclude with the presentation of a <i>Mandelbrot
2234     generator running at compile time.</i></p>
2235
2236     <p>Some basic knowledge of C++ will be assumed.</p>
2237
2238     </abstract>
2239   </eventitem>
2240
2241   <eventitem date="2003-03-27" time="6:30 PM" room="MC1085"
2242     title="SSH and Networks">
2243     <short>Once more into the breach</short>
2244     <abstract>
2245
2246     <p>The Secure Shell (SSH) has now replaced traditional remote login
2247     tools such as <i>rsh</i>, <i>rlogin</i>, <i>rexec</i> and
2248     <i>telnet</i>.  It is used to provide secure, authenticated,
2249     encrypted communications between remote systems.  However, the SSH
2250     protocol provides for much more than this.</p>
2251
2252     <p>In this talk, we will discuss using SSH to its full extent.  Topics
2253     to be covered include:</p>
2254     <ul>
2255       <li>Remote logins</li>
2256       <li>Remote execution</li>
2257       <li>Password-free authentication</li>
2258       <li>X11 forwarding</li>
2259       <li>TCP forwarding</li>
2260       <li>SOCKS tunnelling</li>
2261     </ul>
2262
2263     </abstract>
2264   </eventitem>
2265
2266   <!-- Fall 1994 -->
2267         <eventitem
2268          date="1994-09-13" time="9:00 PM"
2269          room="Princess Cinema"
2270          title="Movie Outing: Brainstorm">
2271                 <short>
2272                         No description available.
2273                 </short>
2274                 <abstract>
2275                         <p>
2276                         The first of this term's CSC social events, we will be going to see
2277                         the movie ``Brainstorm'' at the Princess Cinema. This outing is
2278                         intended primarily for the new first-year students.
2279                         </p>
2280                         <p>
2281                         The Princess Cinema is Waterloo's repertoire theatre. This month
2282                         and next, they are featuring a ``Cyber Film Festival''. Upcoming
2283                         films include:
2284                         </p>
2285                         <ul>
2286                                 <li>Brazil</li>
2287                                 <li>Bladerunner (director's cut)</li>
2288                                 <li>2001: A Space Odyssey</li>
2289                                 <li>Naked Lunch</li>
2290                         </ul>
2291                         <p>
2292                         Admission is $4.25 for a Princess member, $7.50 for a non-member.
2293                         Membership to the Princess is $7.00 per year. 
2294                         </p>
2295                 </abstract>
2296         </eventitem>
2297         <eventitem
2298          date="1994-09-16" time="4:30 PM"
2299          room="MC 4040"
2300          title="CSC Elections">
2301                 <short>No description available</short>
2302                 <abstract>No abstract available</abstract>
2303         </eventitem>
2304         <eventitem
2305          date="1994-09-19" time="4:30 PM"
2306          room="MC 3022"
2307          title="UNIX I Tutorial">
2308                 <short>No description available</short>
2309                 <abstract>No abstract available</abstract>
2310         </eventitem>
2311         <eventitem
2312          date="1994-09-21" time="6:30 PM"
2313          room="DC 1302"
2314          title="SIGGRAPH Video Night">
2315                 <short>No description available</short>
2316                 <abstract>No abstract available</abstract>
2317         </eventitem>
2318         <eventitem
2319          date="1994-09-22" time="4:30 PM"
2320          room="MC 3022"
2321          title="UNIX I Tutorial">
2322                 <short>No description available</short>
2323                 <abstract>No abstract available</abstract>
2324         </eventitem>
2325         <eventitem
2326          date="1994-09-26" time="4:30 PM"
2327          room="MC 3022"
2328          title="UNIX II Tutorial">
2329                 <short>No description available</short>
2330                 <abstract>No abstract available</abstract>
2331         </eventitem>
2332         <eventitem
2333          date="1994-10-13" time="5:00 PM"
2334          room="DC 1302"
2335          title="Prograph: Picture the Future">
2336                 <short>No description available</short>
2337                 <abstract>
2338                         <p>
2339                         What is the next step in the evolution of computer languages?
2340                         Intelligent agents? Distributed objects? or visual languages?
2341                         </p>
2342                         <p>
2343                         Visual languages overcome many of the drawbacks and limitations
2344                         of the textual languages that software development is based on
2345                         today. Do you think about programming in a linear fashion? Or do
2346                         you draw a mental picture of your algorithm and then linearize it
2347                         for the benefit of your compiler? Wouldn't it be nice if you could
2348                         code the same way you think?
2349                         </p>
2350                         <p>
2351                         Visual C++ and Visual BASIC aren't visual languages, but Prograph
2352                         is. Prograph is a commercially available, visual, object-oriented,
2353                         data-flow language. It is well suited to graphical user interface
2354                         development, but is as powerful for general-purpose programming as
2355                         any textual language.
2356                         </p>
2357                         <p>
2358                         The talk will comprise a discussion of the problems of textual
2359                         languages that visual languages solve, a live demonstration of
2360                         Prograph, and some of my observations of the applications of
2361                         Prograph to software development.
2362                         </p>
2363                 </abstract>
2364         </eventitem>
2365         <eventitem
2366          date="1994-10-15" time="10:00 AM"
2367          room="MC 3022"
2368          title="ACM-Style Programming Contest">
2369                 <short>No description available</short>
2370                 <abstract>
2371                         <h3>Big Money and Prizes!</h3>
2372                         <p>
2373                         So you think you're a pretty good programmer? Pit your skills
2374                         against others on campus in this triannual event! Contestants will
2375                         have three hours to solve five programming problems in either C or
2376                         Pascal.
2377                         </p>
2378                         <p>
2379                         Last fall's winners went on to the International Finals and came
2380                         first overall! You could be there, too!
2381                         </p>
2382                 </abstract>
2383         </eventitem>
2384         <eventitem
2385          date="1994-10-20" time="4:30 PM"
2386          room="MC 3009"
2387          title="Exploring the Internet">
2388                 <short>No description available</short>
2389                 <abstract>
2390                         <h3>Need something to do between assignments/beers?</h3>
2391                         <p>
2392                          Did you know that your undergrad account at Waterloo gives you
2393                          access tothe world's largest computer network? With thousands
2394                          of discussion groups, gigabytes of files to download, multimedia
2395                          information browsers, even on-line entertainment?
2396                         </p>
2397                         <p>
2398                         The resources available on the Internet are vast and wondrous, but
2399                         the tools for navigating it are sometimes confusing and arcane. In
2400                         this hands-on tutorial you will get the chance to get your feet wet
2401                         with the world's most mind-bogglingly big computer network, the
2402                         protocols and programs used, and how to use them responsibly and
2403                         effectively. 
2404                         </p>
2405                 </abstract>
2406         </eventitem>
2407         <eventitem
2408          date="1994-11-02" time="4:30 PM"
2409          room="MC 2038"
2410          title="Game Theory">
2411                 <short>No description available</short>
2412                 <abstract>
2413                         <h3>From the Minimax Theorem, through Alpha-Beta, and beyond...</h3>
2414                         <p>
2415                          This will be a descussion of the pitfalls of using mathematics and
2416                          algorithms to play classical board games. Thorough descriptions
2417                          shall be presented of the simple techniques used as the building
2418                          blocks that make all modern computer game players. I will use
2419                          tic-tac-toe as a control for my arguements. Other games such as
2420                          Chess, Othello and Go shall be the be a greater measure of progress;
2421                          and more importantly the targets of our dreams.
2422                          </p>
2423                         <p>
2424                          To enhance the discussion of the future, Barney Pell's Metagamer
2425                          shall be introduced. His work in define classes of games is
2426                          important in identifying the features necessary for analysis. 
2427                          </p>
2428                 </abstract>
2429         </eventitem>
2430
2431   <!-- Fall 1999 -->
2432
2433   <eventitem date="1999-10-18" time="2:30 PM" room="DC1304"
2434   title="Living Laboratories: The Future Computing Environments at
2435   Georgia Tech">
2436     <short>By Blair MacIntyre and Elizabeth Mynatt</short>
2437     <abstract>
2438       <p>by   Blair MacIntyre and Elizabeth Mynatt</p>
2439       <p>The Future Computing Environments (FCE) Group at Georgia Tech
2440         is a collection of faculty and students that share a desire to
2441         understand the partnership between humans and technology that
2442         arises as computation and sensing become ubiquitous.  With
2443         expertise covering the breadth of Computer Science, but
2444         focusing on HCI, Computational Perception, and Machine
2445         Learning, the individual research agendas of the FCE faculty
2446         are grounded in a number of shared "living laboratories" where
2447         their research is applied to everyday life in the classroom
2448         (Classroom 2000), the home (the Aware Home), the office
2449         (Augmented Offices), and on one's person.  Professors
2450         MacIntyre and Mynatt will discuss a variety of these projects,
2451         with an emphasis on the HCI and Computer Science aspects of
2452         the FCE work.
2453       </p>
2454       <p>
2455         In addition to their affiliation with the FCE group,
2456         Professors Mynatt and MacIntyre are both members of the
2457         Graphics, Visualization and Usability Center (GVU) at Georgia
2458         Tech.  This interdisciplinary center brings together research
2459         in computer science, psychology, industrial engineering,
2460         architecture and media design by examining the role of
2461         computation in our everyday lives.  During the talk, they will
2462         touch on some of the research and educational opportunities
2463         available at both GVU and the College of Computing.
2464       </p>
2465     </abstract>
2466   </eventitem>
2467
2468   <eventitem date="1999-10-19" time="4:30 PM" room="DC1304"
2469   title="GDB, Purify Tutorial">
2470     <short>No description available.</short>
2471     <abstract>
2472       <p>
2473        Debugging can be the most difficult and time consuming part of
2474        any program's life-cycle. Far from an exact science, it's more
2475        of an art ... and close to some kind of dark magic. Cryptic
2476        error messages, lousy error checking, and icky things like
2477        implicit casts can make it nearly impossible toknow what's
2478        going on inside your program.
2479       </p>
2480       <p>
2481          Several tools are available to help automate your
2482          debuggin. GDB and Purify are among the most powerful
2483          debugging tools available in a UNIX environment. GDB is an
2484          interactive debugger, allowing you to `step' through
2485          aprogram, examine function calls, variable contents, stack
2486          traces and let you look at the state of a program after it
2487          crashes. Purify is a commercial program designed to help find
2488          and remove memory leaks from programs written inlanguages
2489          without automatic garbage collection.
2490       </p>
2491       <p>
2492         This talk will cover how to compile your C and C++ programs
2493         for use with GDB and Purify, as well as how to use the
2494         available X interfaces. If a purify license is available on
2495         undergrad at the time of the talk, we will cover how to use it
2496         during runtime.
2497       </p>
2498     </abstract>
2499   </eventitem>
2500
2501   <eventitem date="1999-12-01" time="4:30 PM" room="MC2066"
2502     title="Homebrew Processors and Integrated Systems in FPGAs">
2503     <short>By Jan Gray</short>
2504     <abstract>
2505       <p>by Jan Gray</p>
2506       
2507       <p> With the advent of large inexpensive field-programmable gate
2508       arrays and tools it is now practical for anyone to design and
2509       build custom processors and systems-on-a-chip. Jan will discuss
2510       designing with FPGAs, and present the design and implementation
2511       of xr16, yet another FPGA-based RISC computer system with
2512       integrated peripherals.</p>
2513
2514       <p> Jan is a past CSC pres., B.Math. CS/EEE '87, and wrote
2515       compilers, tools, and middleware at Microsoft from 1987-1998. He
2516       built the first 32-bit FPGA CPU and system-on-a-chip in
2517       1995. </p>
2518     </abstract>
2519   </eventitem>
2520
2521   <eventitem date="1999-12-01" time="7:00 PM" room="Golf's Steakhouse"
2522     title="Ctrl-D">
2523     <short>End-of-term dinner</short> 
2524     <abstract>
2525       No abstract available.
2526     </abstract>
2527   </eventitem>
2528
2529   <eventitem date="1999-12-02" time="1:30 PM" room="DC1302"
2530     title="Calculational Mathematics">
2531     <short>By Edgar Dijkstra</short>
2532     <abstract>
2533       <p> By Edgar Dijkstra</p>
2534
2535       <p> This  talk will use  partial orders, lattice theory,  and, if
2536       time permits,  the Galois  connection as carriers  to illustrate
2537       the use of  calculi in mathematics. We hope  to show the brevity
2538       of  many calculations  (in order  tofight the  superstition that
2539       formal  proofs  are  necessarily  unpractically long),  and  the
2540       strong   heuristic  guidance   that  is   available   for  their
2541       design. </p>
2542
2543       <p> Dijkstra is known for early graph-theoretical algorithms,
2544       the first implementation of ALGOL 60, the first operating system
2545       composed of explicitly synchronized processes, the invention of
2546       guarded commands and of predicate transformers as a means for
2547       defining semantics, and programming methodology in the broadest
2548       sense of the word. </p>
2549
2550       <p> His current research interests focus on the formal
2551       derivation of proofs and programs, and the streamlining of the
2552       mathematical argument in general.</p>
2553      
2554       <p> Dijkstra held the Schlumberger Centennial Chair in Computer
2555       Sciences at The University of Texas at Austin until retiring in
2556       October. </p>
2557
2558     </abstract>
2559   </eventitem>
2560
2561   <eventitem date="1999-12-03" time="10:00 AM" room="Siegfried Hall,
2562   St Jerome's" title="Proofs and Programs">
2563     <short>By Edsger Dijkstra</short>
2564     <abstract>
2565       <p> This talk will show the use of programs for the proving of
2566       theorems. Its purpose is to show how our experience gained in
2567       the derivations of programs might be transferred to the
2568       derivation of proofs in general. The examples will go beyond the
2569       (traditional) existence theorems. </p>
2570
2571       <p> Dijkstra is known for early graph-theoretical algorithms,
2572       the first implementation of ALGOL 60, the first operating system
2573       composed of explicitly synchronized processes, the invention of
2574       guarded commands and of predicate transformers as a means for
2575       defining semantics, and programming methodology in the broadest
2576       sense of the word. </p>
2577
2578       <p> His current research interests focus on the formal
2579       derivation of proofs and programs, and the streamlining of the
2580       mathematical argument in general.</p>
2581      
2582       <p> Dijkstra held the Schlumberger Centennial Chair in Computer
2583       Sciences at The University of Texas at Austin until retiring in
2584       October. </p>
2585
2586     </abstract>
2587   </eventitem>
2588
2589   <eventitem date="1999-12-03" time="3:00 PM" room="DC1351"
2590     title="Open Q&amp;A session">
2591     <short>By Edsger Dijkstra</short>
2592     <abstract>No description available.</abstract>
2593   </eventitem>
2594
2595   <!-- Winter 2000 -->
2596
2597   <eventitem date="2000-03-24" time="4:30 PM" room="DC1304"
2598   title="Enterprise Java APIs and Implementing a Web Portal">
2599     <short>No description available.</short>
2600     <abstract>
2601       <h3>by Floyd Marinescu
2602       </h3>
2603       
2604       <p>
2605         The first talk will be an introduction to the Enterprise Java
2606         API's: Servlets, JSP, EJB, and how to use them to build
2607         eCommerce sites.
2608       </p>
2609
2610       <p>
2611         The second talk will be about how these technologies were used
2612         to implement a real world portal.  The talk will include an
2613         overview of the design patterns used and will feature
2614         architectural information about the yet to be release portal
2615         (which I am one of the developers) called theserverside.com.
2616       </p>
2617     </abstract>
2618   </eventitem>
2619
2620   <eventitem date="2000-03-30" time="4:30 PM" room="DC1304"
2621     title="Enterprise Java APIs and Implementing a Web Portal (1)">
2622     <short>No description available.</short>
2623     <abstract>
2624       <p>Real World J2EE - Design Patterns and architecture behind the
2625         yet to be released J2EE portal: theserverside.com</p>
2626
2627       <p>This talk will feature an exclusive look at the architecture
2628         behind the new J2EE portal: theserverside.com.  Join Floyd
2629         Marinescu in a walk-through ofthe back-end of the portal,
2630         while learning about J2EE and its real world patterns,
2631         applications, problems and benefits.</p>
2632     </abstract>
2633   </eventitem>
2634
2635   <!-- Spring 2000 -->
2636
2637   <eventitem date="2000-07-20" time="7:00 PM" room="Ali Babas Steak
2638   House, 130 King Street S, Waterloo" title="Ctrl-D">
2639     <short>End-of-term dinner</short>
2640     <abstract>No abstract available.</abstract>
2641   </eventitem>
2642
2643   <!-- Fall 2000 -->
2644
2645   <eventitem date="2000-09-14" time="6:00 PM" room="DC1302"
2646     title="CSC Elections">
2647     <short>Fall 2000 Elections for the CSC.</short>
2648     <abstract>
2649       <p>
2650         Would you like to get involved in the CSC? Would you like to have a
2651         say in what the CSC does this term?  Come out to the CSC Elections!
2652         In addition to electing the executive for the Fall term, we will be
2653         appointing office staff and other positions.  Look for details in
2654         uw.csc.
2655       </p>
2656
2657       <p>Nominations for all positions are being taken in the CSC office, MC
2658         3036.</p>
2659     </abstract>
2660   </eventitem>
2661
2662   <eventitem date="2000-09-14" time="7:00 PM" room="DC1302"
2663     title="SIGGraph Video Night">
2664     <short> SIGGraph Video Night Featuring some truly awesome computer
2665     animations from Siggraph '99. </short>
2666     <abstract>
2667       <p> Interested in Computer Graphics?
2668       </p>
2669       
2670       <p> Enjoy watching state-of-the-art Animation?
2671       </p>
2672       
2673       <p> Looking for a cheap place to take a date?
2674       </p>
2675       
2676       <p> SIGGraph Video Night -
2677         Featuring some truly awesome computer animations from Siggraph '99.
2678       </p>
2679
2680       <p>Come out for the Computer Science Club general elections at 6:00
2681         pm, right before SIGGraph!</p>
2682       </abstract>
2683   </eventitem>
2684
2685  <eventitem date="2000-09-25" time="2:30 PM" room="DC1302"
2686     title="Realising the Next Generation Internet">
2687     <short>By Frank Clegg of Microsoft Canada</short>
2688     <abstract>
2689 <h3>Vitals</h3>
2690 <dl>
2691 <dt>By</dt>
2692 <dd>Frank Clegg</dd>
2693 <dd>President, Microsoft Canada</dd>
2694 <dt>Date</dt>
2695
2696 <dd>Monday, September 25, 2000</dd>
2697 <dt>Time</dt>
2698 <dd>14:30 - 16:00</dd>
2699 <dt>Place</dt>
2700 <dd>DC 1302</dd>
2701 <dd>(Davis Centre, Room 1302, University of Waterloo)</dd>
2702
2703 <dt>Cost</dt>
2704 <dd>$0.00</dd>
2705 <dt>Pre-registration</dt>
2706 <dd>Recommended</dd>
2707 <dd><a HREF="http://infranet.uwaterloo.ca:81/infranet/semform.htm">http://infranet.uwaterloo.ca:81/infranet/semform.htm</a></dd>
2708 <dd>(519) 888-4004</dd>
2709
2710 </dl>
2711
2712 <h3>Abstract</h3>
2713 <p>The Internet and the Web have revolutionized our communications, our access
2714 to information and our business methods. However, there is still much room 
2715 for improvement. Frank Clegg will discuss Microsoft's vision for what is 
2716 beyond browsing and the dotcom. Microsoft .NET (pronounced "dot-net") is a 
2717 new platform, user experience and set of advanced software services planned 
2718 to make all devices work together and connect seamlessly. With this next 
2719 generation of software, Microsoft's goal is to make Internet-based 
2720 computing and communications easier to use, more personalized, and more 
2721 productive for businesses and consumers. In his new position of president 
2722 of Microsoft Canada Co., Frank Clegg will be responsible for leading the 
2723 organization toward the delivery of Microsoft .NET. He will speak about 
2724 this new platform and the next generation Internet, how software developers 
2725 and businesses will be able to take advantage of it, and what the .NET 
2726 experience will look like for consumers and business users.</p>
2727
2728 <h3>The Speaker</h3>
2729 <p>Frank Clegg was appointed president of Microsoft Canada Co. this month. 
2730 Prior to his new position, Mr. Clegg was vice-president, Central Region, 
2731 Microsoft Corp. from 1996 to 2000. In this capacity, he was responsible for 
2732 sales, support and marketing activities in 15 U.S. states. Mr. Clegg joined 
2733 Microsoft Corp. in 1991 and headed the Canadian subsidiary until 1996. 
2734 During that time, Mr. Clegg was instrumental in introducing several key 
2735 initiatives to improve company efficiency, growth and market share. Mr. 
2736 Clegg graduated from the University of Waterloo in 1977 with a B. Math.</p>
2737
2738 <h3>For More Information</h3>
2739 <address>
2740 Shirley Fenton<br />
2741 The infraNET Project<br />
2742 University of Waterloo<br />
2743 519-888-4567 ext. 5611<br />
2744 <a HREF="http://infranet.uwaterloo.ca/">http://infranet.uwaterloo.ca/</a>
2745 </address>
2746       </abstract>
2747   </eventitem>
2748
2749
2750  <!-- Winter 2001 -->
2751
2752  <eventitem date="2001-01-15" time="4:30 PM" room="MC3036"
2753     title="Executive elections">
2754   <short>Winter 2001 CSC Elections.</short>
2755   <abstract>
2756       <p>Would you like to get involved in the CSC? Would you like to
2757         have a say in what the CSC does this term? Come out to the CSC
2758         Elections! In addition to electing the executive for the
2759         Winter term, we will be appointing office staff and other
2760         positions. Look for details in uw.csc.
2761       </p>
2762       <p>
2763         Nominations for all positions are being taken in the CSC
2764         office, MC 3036.
2765       </p>
2766     </abstract>
2767  </eventitem>
2768   <eventitem date="2001-01-22" time="3:30 PM" room="MC3036"
2769     title="Meeting #2">
2770     <short>Second CSC meeting for Winter 2001.</short>
2771     <abstract>
2772       <h3>Proposed agenda</h3>
2773       <dl>
2774         <dt>Book purchases</dt>
2775         <dd>
2776           <p>They haven't been done in 2 terms.
2777             We have an old list of books to buy.
2778             Any suggestions from uw.csc are welcome.</p>
2779         </dd>
2780         <dt>CD Burner</dt>
2781         
2782         <dd>
2783           <p>For doing linux burns. It was allocated money on the budget
2784             request - about $300. We should be able to get a decent 12x
2785             burner with that (8x rewrite).</p>
2786           <p>The obvious things to sell are Linux Distros and BSD variants.
2787             Are there any other software that we can legally burn and sell
2788             to students?</p>
2789         </dd>
2790         <dt>Unix talks</dt>
2791         <dd>
2792           <p>Just a talk of the topics to be covered, when, where, whatnot.
2793             Mike was right on this one, this should have been done earlier
2794      in the term.  Oh well, maybe we can fix this for next fall term.</p>
2795           
2796         </dd>
2797         <dt>Game Contest</dt>
2798         <dd>
2799           <p>We already put a bit of work into planning the Othello contest
2800             before I read Mike's post. I still think it's viable. I've got
2801             at least 2 people interested in writing entries for it. This
2802             will be talked about more on monday. Hopefully, Rory and I will
2803             be able to present a basic outline of how the contest is going
2804             to be run at that time.</p>
2805         </dd>
2806         <dt>Peri's closet cleaning</dt>
2807         <dd>
2808           
2809           <p>Current sysadmin (jmbeverl) and I (kvijayan) and
2810             President (geduggan) had a nice conversation about this 2
2811             days ago, having to do with completely erasing all of
2812             peri, installing a clean stable potato debian on it, and
2813             priming it for being a gradual replacement to calum. We'll
2814             probably discuss how much we want to get done on this
2815             front on Monday.</p>
2816         </dd>
2817       </dl>
2818       
2819       <p>Any <a HREF="nntp://news.math.uwaterloo.ca/uw.csc/8305">comments</a> from <a HREF="news:uw.csc">the newsgroup</a> are welcome.</p>
2820     </abstract>
2821   </eventitem>
2822
2823   <eventitem date="2001-01-27" time="10:30 AM" room="MC3006"
2824     title="ACM-Style programming contest">
2825     <short>Practice for the ACM international programming
2826     contest</short>
2827     <abstract>
2828 <p>Our ACM-Style practice  contests involve answering five questions in three
2829 hours.   Solutions are written  in Pascal, C  or C++.   Seven years in  a row,
2830 Waterloo's teams  have been in  the top ten  at the world  finals.
2831 For more information, see
2832 <a HREF="http://plg.uwaterloo.ca/~acm00/">the contest web page</a>.</p>
2833
2834 <h3>Easy Question:</h3>
2835 <p>A palindrome is a sequence of letters that reads the same backwards and
2836 forwards, such as ``Madam, I'm Adam'' (note that case doesn't matter and
2837 only letters are important). Your task is to find the longest palindrome in
2838 a line of text (if there is a tie, print the leftmost one).</p>
2839 <pre>
2840 Input:                              Output:
2841
2842 asfgjh12dsfgg kj0ab12321BA wdDwkj   abBA
2843 abcbabCdcbaqwerewq                  abCdcba
2844 </pre>
2845
2846 <h3>Hard Question:</h3>
2847 <p>An anagram is a word formed by reordering the letters of another word.
2848 Find all sets of anagrams that exist within a large dictionary.  The
2849 input will be a sorted list of words (up to 4000 words), one per line.
2850 Output each set of anagrams on a separate line.  Each set should be
2851 in alphabetical order, and all lines of sets should be in alphabetical
2852 order.  A word with no anagrams is a set of anagrams itself, and should
2853 be displayed with no modifications.</p>
2854
2855 <pre>
2856 Input:      Output:
2857
2858 post        post pots stop
2859 pots        start
2860 start
2861 stop
2862 </pre>
2863     </abstract>
2864   </eventitem>
2865
2866   <eventitem date="2001-01-29" time="02:39 PM" room="MC3036"
2867     title="Meeting #3">
2868     <short>No description available.</short>
2869     <abstract>No abstract available.</abstract>
2870   </eventitem>
2871
2872   <eventitem date="2001-02-05" time="03:30 PM" room="MC3036"
2873     title="Meeting #4">
2874     <short>No description available.</short>
2875     <abstract>No abstract available.</abstract>
2876   </eventitem>
2877
2878   <eventitem date="2001-02-12" time="03:30 PM" room="MC3036"
2879     title="Meeting #5">
2880     <short>No description available.</short>
2881     <abstract>No abstract available.</abstract>
2882   </eventitem>
2883
2884   <!-- Spring 2001 -->
2885
2886   <eventitem date="2001-06-02" time="10:30 AM" room="MC3006"
2887     title="ACM-Style programming contest">
2888     <short>Practice for the ACM international programming
2889     contest</short>
2890     <abstract>
2891 <p>Our ACM-Style practice  contests involve answering five questions in three
2892 hours.   Solutions are written  in Pascal, C  or C++.   Seven years in  a row,
2893 Waterloo's teams  have been in  the top ten  at the world  finals.
2894 For more information, see
2895 <a HREF="http://plg.uwaterloo.ca/~acm00/">the contest web page</a>.</p>
2896
2897 <h3>Easy Question:</h3>
2898 <p>A palindrome is a sequence of letters that reads the same backwards and
2899 forwards, such as ``Madam, I'm Adam'' (note that case doesn't matter and
2900 only letters are important). Your task is to find the longest palindrome in
2901 a line of text (if there is a tie, print the leftmost one).</p>
2902 <pre>
2903 Input:                              Output:
2904
2905 asfgjh12dsfgg kj0ab12321BA wdDwkj   abBA
2906 abcbabCdcbaqwerewq                  abCdcba
2907 </pre>
2908
2909 <h3>Hard Question:</h3>
2910 <p>An anagram is a word formed by reordering the letters of another word.
2911 Find all sets of anagrams that exist within a large dictionary.  The
2912 input will be a sorted list of words (up to 4000 words), one per line.
2913 Output each set of anagrams on a separate line.  Each set should be
2914 in alphabetical order, and all lines of sets should be in alphabetical
2915 order.  A word with no anagrams is a set of anagrams itself, and should
2916 be displayed with no modifications.</p>
2917
2918 <pre>
2919 Input:      Output:
2920
2921 post        post pots stop
2922 pots        start
2923 start
2924 stop
2925 </pre>
2926     </abstract>
2927   </eventitem>
2928
2929
2930  <!-- Winter 2002 -->
2931
2932  <eventitem date="2002-01-26" time="2:00 PM"
2933   room="Comfy Lounge MC3001" 
2934   title="An Introduction to GNU Hurd">
2935   <short>Bored of GNU/Linux? Try this experimental operating
2936   system!</short>
2937   <abstract>
2938 <p>GNU Hurd is an operating system kernel based on the microkernel
2939 architecture design. It was the original GNU kernel, predating Linux,
2940 and is still being actively developed by many volunteers.</p>
2941 <p>The Toronto-area Hurd Users Group, in co-operation with the Computer
2942 Science Club, is hosting an afternoon to show the Hurd to anyone
2943 interested. Jeff Bailey, a Hurd developer, will give a presentation on
2944 the Hurd, followed by a GnuPG/PGP keysigning party. To finish it off,
2945 James Morrison, also a Hurd developer, will be hosting a Debian
2946 GNU/Hurd installation session.</p>
2947 <p>All interested are invited to attend. Bring your GnuPG/PGP fingerprint
2948 and mail your key to sjdutoit@uwaterloo.ca with the subject
2949 ``keysigning'' (see separate announcement).</p>
2950 <p>Questions? Suggestions? Contact <a
2951 href="ja2morri@uwaterloo.ca">James Morrison</a>.</p>
2952   </abstract>
2953  </eventitem>
2954  <eventitem date="2002-01-26" time="2:30 PM"
2955   room="Comfy Lounge MC3001" 
2956   title="GnuPG/PGP Keysigning Party">
2957   <short>Get more signatures on your key!</short>
2958   <abstract>
2959   <p>
2960    GnuPG and PGP provide public-key based encryption for e-mail and
2961    other electronic communication. In addition to preventing others
2962    from reading your private e-mail, this allows you to verify that an
2963    e-mail or file was indeed written by its perceived author.
2964   </p>
2965   <p>
2966    In order to make sure a GnuPG/PGP key belongs to the respective
2967    person, the key must be signed by someone who has checked the
2968    user's key fingerprint and verified the user's identification.
2969   </p>
2970   <p>
2971    A keysigning party is an ideal occasion to have your key signed by
2972    many people, thus strengthening the authority of your key. Everyone
2973    showing up exchanges key signatures after verifying ID and
2974    fingerprints. The Computer Science Club will be hosting such a
2975    keysigning party together with the Hurd presentation by THUG (see
2976    separate announcement). See
2977    <a href="http://www.student.math.uwaterloo.ca/~sjdutoit/"> the
2978    keysigning party homepage</a> for more information.
2979   </p>
2980   <p>
2981    Before attending it is important that you mail your key to
2982    sjdutoit@uwaterloo.ca with the subject ``keysigning.'' Also make
2983    sure to bring photo ID and a copy of your GnuPG/PGP fingerprint on
2984    a sheet of paper to the event.
2985   </p>
2986   </abstract>
2987  </eventitem>
2988  <eventitem date="2002-01-31" time="6:00 PM" room="MC2037"
2989   title="UNIX 101: First Steps With UNIX">
2990   <abstract>
2991     This is the first in a series of seminars that cover the use of
2992     the UNIX Operating System. UNIX is used in a variety of
2993     applications, both in academia and industy. We will be covering
2994     the basics of the UNIX environment, as well as the use of PINE, an
2995     electronic mail and news reader.
2996   </abstract>
2997  </eventitem>
2998  <eventitem date="2002-02-13" time="4:00 PM" room="MC4060"
2999   title="DVD-Video Under Linux">
3000   <short>Billy Biggs will be holding a talk on DVD technology
3001   (in particular, CSS and playback issues) under Linux, giving some
3002   technical details as well as an overview of the current status of
3003   Free Software efforts. All are welcome.</short>
3004   <abstract>
3005    <p>DVD copy protection: Content Scrambling System (CSS)</p>
3006    <ul>
3007     <li>A technical introduction to CSS and an overview of the ongoing
3008     legal battle to allow distribution of non-commercial DVD
3009     players</li>
3010     <li>The current Linux software efforts and open issues</li>
3011     <li>How applications and Linux distributions are handling the
3012     legal issues involved</li>
3013    </ul>
3014    <p>DVD-Video specifics: Menus and navigation</p>
3015    <ul>
3016     <li>An overview of the DVD-Video standard</li>
3017     <li>Reverse engineering efforts and their implementation status</li>
3018     <li>Progress of integration into Linux media players</li>
3019    </ul>
3020   </abstract>
3021  </eventitem>
3022  <eventitem date="2002-02-07" time="6:00 PM" room="MC2037"
3023   title="Unix 102: Fun With UNIX">
3024   <short>This the second in a series of UNIX tutorials. Simon Law and
3025   James Perry will be presenting some more advanced UNIX
3026   techniques. All are welcome. Accounts will be provided for those
3027   needing them.</short>
3028   <abstract>
3029    <p>
3030     This is the second in a series of seminars that cover the use of
3031     the UNIX Operating System. UNIX is used in a variety of
3032     applications, both in academia and industry. We will provide you
3033     with hands-on experience with the Math Faculty's UNIX environment
3034     in this tutorial.
3035    </p>
3036    <p>Topics that will be discussed include:</p>
3037    <ul>
3038     <li>Interacting with Bourne and C shells</li>
3039     <li>Editing text using the vi text editor</li>
3040     <li>Editing text using the Emacs display editor</li>
3041     <li>Multi-tasking and the screen multiplexer</li>
3042    </ul>
3043    <p>
3044      If you do not have a Math computer account, don't panic; one will
3045      be lent to you for the duration of this class.
3046    </p>
3047   </abstract>
3048  </eventitem>
3049  <eventitem date="2002-03-01" time="5:00 PM" room="MC4060"
3050   title="Computer Go, The Ultimate">
3051   <short>Thomas Wolf from Brock University will be holding a talk on
3052   the asian game of Go. All are welcome.</short>
3053   <abstract>
3054    <p>
3055     The asian game go is unique in a number of ways. It is the oldest
3056     board game known. It is a strategy game with very simple
3057     rules. Computer programs are very weak despite huge efforts and
3058     prizes of US$ &gt; 1.5M for a program beating professional
3059     players. The talk will quickly explain the rules of go, compare go
3060     and chess, mention various attempts to program go and describe our
3061     own efforts in this field. Students will have an opportunity to
3062     solve computer generated go problems. Prizes will be available.
3063    </p>
3064   </abstract>
3065  </eventitem>
3066
3067   <!-- Spring 2002 -->
3068
3069   <eventitem date="2002-05-11" time="7:00 PM" room="MC3036" title="S02
3070     elections">
3071     <short>Come and vote for this term's exec</short>
3072     <abstract>
3073       <p>
3074         Vote for the exec this term. Meet at the CSC office.
3075       </p>
3076     </abstract>
3077   </eventitem>
3078
3079
3080   <!-- Fall 2002 -->
3081
3082   <eventitem date="2002-09-16" time="5:30 PM" room="Comfy lounge"
3083   title="F02 elections">
3084     <short>Come and vote for this term's exec</short>
3085     <abstract>
3086       <p>
3087         Vote for the exec this term. Meet at the comfy
3088         lounge. There will be an opportunity to obtain or renew
3089         memberships. This term's CRO is Siyan Li
3090         (s8li@csclub.uwaterloo.ca).
3091       </p>
3092     </abstract>
3093   </eventitem>
3094
3095   <eventitem date="2002-09-30" time="6:30 PM" room="Comfy lounge, MC3001"
3096   title="Business Meeting">
3097     <short>Vote on a constitutional change.</short>
3098     <abstract>
3099       <p>
3100          The executive has unanimously decided to try to change our
3101 constitution to comply with MathSoc policy.  The clause we are trying
3102 to change is the membership clause.  The following is the proposed new
3103 reading of the clause.
3104       </p>
3105       <p><i>
3106         In compliance with MathSoc regulations and in recognition of
3107 the club being primarily targeted at undergraduate students, full
3108 membership is open to all undergraduate students in the Faculty of
3109 Mathematics and restricted to the same.</i>
3110       </p>
3111
3112       <p>
3113         The proposed change is illustrated <a
3114         href="http://www.csclub.uwaterloo.ca/docs/constitution-change-20020920.html">on
3115         a web page</a>.
3116       </p>
3117
3118       <p>
3119         There will be a business meeting on 30 Sept 2002 at 18:30 in
3120         the comfy lounge, MC 3001. Please come and vote
3121       </p>
3122     </abstract>
3123   </eventitem>
3124
3125   <eventitem date="2002-09-26" time="5:30 PM" room="MC3006"
3126   title="UNIX 101">
3127     <short>First Steps with UNIX</short>
3128     <abstract>
3129       <p>
3130            Get to know UNIX and be the envy of your friends!
3131       </p>
3132       <p>
3133         This is the first in a series of seminars that cover the use
3134         of the UNIX Operating System.  UNIX is used in a variety of
3135         applications, both in academia and industy. We will provide
3136         you with hands-on experience with the Math Faculty's UNIX
3137         environment in this seminar.
3138       </p>
3139       <p>
3140         Topics that will be discussed include:
3141       </p>
3142       <ul>
3143         <li>Navigating the UNIX environment</li>
3144         <li>Using common UNIX commands</li>
3145         <li>Using the PICO text editor</li>
3146         <li>Reading electronic mail and news with PINE</li>
3147       </ul>
3148       <p>
3149     If you do not have a Math computer account, don't panic; one will be 
3150 lent to you for the duration of this class.
3151       </p>
3152     </abstract>
3153   </eventitem>
3154
3155   <eventitem date="2002-10-01" time="6:30 PM-9:30 PM" room="The Bomber"
3156   title="Pints with the Profs">
3157     <short>Get to know your profs and be the envy of your friends!</short>
3158     <abstract>
3159     <p>Come out and meet your professors.  This is a great opportunity to
3160 meet professors for Undergraduate Research jobs or to find out who you might
3161 have for future courses.</p>
3162
3163     <p>Profs who have confirmed their attendance are:</p>
3164     <ul>
3165       <li>Troy Vasiga, School of Computer Science</li>
3166       <li>J.P. Pretti, St. Jerome's and School of Computer Science</li>
3167       <li>Michael McCool, School of Computer Science, CGL</li>
3168       <li>Martin Karsten, School of Computer Science, BBCR</li>
3169       <li>Gisli Hjaltason, School of Computer Science, DB</li>
3170     </ul>
3171
3172     <p>There will also be...</p>
3173     <ul>
3174       <li>Free Food</li>
3175       <li>Free Food</li>
3176       <li>Free Food</li>
3177     </ul>
3178     </abstract>
3179   </eventitem>
3180
3181   <eventitem date="2002-10-03" time="5:30 PM" room="MC3006"
3182   title="UNIX 102">
3183     <short>Talking to your UNIX can be fun and profitable.</short>
3184     <abstract>
3185 <p>This is the second in a series of seminars that cover the use of
3186 the UNIX Operating System. UNIX is used in a variety of applications,
3187 both in academia and industry. We will provide you with hands-on
3188 experience with the Math Faculty's UNIX environment in this
3189 tutorial.</p>
3190
3191 <p>Topics that will be discussed include:</p>
3192 <ul><li>Interacting with Bourne and C shells</li>
3193 <li>Editing text using the vi text editor</li>
3194 <li>Editing text using the Emacs display editor</li>
3195 <li>Multi-tasking and the screen multiplexer</li>
3196 </ul>
3197
3198 <p>If you do not have a Math computer account, don't panic; one will be
3199 lent to you for the duration of this class.</p>
3200
3201 </abstract>
3202   </eventitem>
3203
3204   <eventitem date="2002-10-08" time="4:30PM" room="MC4045"
3205   title="Video cards, Linux display drivers and the Kernel Graphics Interface (KGI)">
3206     <short>A talk by Filip Spacek, KGI developer</short>
3207     <abstract>
3208     Linux has proven itself as a reliable operating system but arguably,
3209     it still lacks in support of high performance graphics
3210     acceleration. This talk will describe basic components of a PC video
3211     card and the design and limitations the current Linux display driver
3212     architecture.  Finally a an overview of a new architecture, the Kernel
3213     Graphics Interface (KGI), will be given.  KGI attempts to solve the
3214     shortcomings of the current design, and provide a lightweight and
3215     portable interface to the display subsystem.
3216     </abstract>
3217   </eventitem>
3218
3219   <eventitem date="2002-10-10" time="5:30pm" room="MC3006"
3220   title="UNIX 103">
3221     <short></short>
3222     <abstract>No abstract available yet.</abstract>
3223   </eventitem>
3224
3225   <eventitem date="2002-11-05" time="4:30 PM" room="MC 2065"
3226   title="The Evil Side of C++">
3227     <short>Abusing template metaprogramming in C++; aka. writing a
3228     Mandelbrot generator that runs at compile time</short>
3229     <abstract>
3230       <p>Templates are a useful feature in C++ when it comes to writing
3231     type-independent data structures and algorithms. Relatively soon
3232     after their appearance it was realised that they could be used to
3233     do much more than this. Essentially it is possible to write
3234     certain programs in C++ that execute <i>completely at compile
3235     time</i> rather than run time. Combined with constant-expression
3236     optimisation this is an interesting twist on regular C++
3237     programming.</p>
3238     <p>This talk will give a short overview of the features of
3239     templates and then go on to describe how to &quot;abuse&quot;
3240     templates to perform complex computations at compile time. The
3241     speaker will present three programs of increasing complexity which
3242     execute at compile time. First a factorial listing program, then a
3243     prime listing program will be presented. Finally the talk will
3244     conclude with the presentation of a <b>Mandelbrot generator running
3245     at compile time</b>.</p>
3246
3247     <p>If you are interested in programming for the fun of it, the C++
3248     language or silly tricks to do with languages, this talk is for
3249     you. No C++ knowledge should be necessary to enjoy this talk, but
3250     programming experience will make it more worthwile for you.</p>
3251
3252     </abstract> </eventitem>
3253
3254   <eventitem date="2002-11-02" time="11:00AM-3:00PM"
3255     room="MC3002 (Math Coffee and Donut Store)"
3256     title="GNU/Linux InstallFest with KW-LUG and UW-DIG">
3257     <short>Bring over your computer and we'll help you install GNU/Linux</short>
3258     <abstract>
3259       <p>The <a href="http://www.csclub.uwaterloo.ca/">CSC</a>, the <a
3260       href="http://www.kwlug.org/">KW-Linux User Group</a>, and the <a
3261       href="http://uw-dig.uwaterloo.ca/">UW Debian Interest Group</a>
3262       are jointly hosting a GNU/Linux InstallFest.  GNU/Linux is a
3263       powerful, free operating system for your computer.  It is mostly
3264       written by talented volunteers who like to share their efforts
3265       and help each other.</p>
3266
3267       <p>Perhaps you have are you interested in installing GNU/Linux.
3268       If so, bring your computer, monitor and keyboard; and we will
3269       help you install GNU/Linux on your machine.  You can also find
3270       knowledgable people who can answer your questions about
3271       GNU/Linux.</p>
3272
3273       <hr />
3274
3275       <h3>Frequently Asked Questions</h3>
3276
3277 <p><b>Q: </b>What is GNU/Linux?<br />
3278 <b>A: </b>GNU/Linux is a free operating system for your computer.  It is mostly
3279    written by talented volunteers who like to share their efforts.
3280 </p>
3281
3282 <p><b>Q: </b>Free?<br />
3283 <b>A: </b>GNU/Linux is available for zero-cost.  As well, it allows you such
3284    freedom to share it with your friends, or to modify the software to
3285    your own needs and share that with your friends.  It's very friendly.
3286 </p>
3287
3288 <p><b>Q: </b>What is an InstallFest?<br />
3289 <b>A: </b>An InstallFest is a meeting where volunteers help people install
3290    GNU/Linux on their computers.  It's also a place to meet users, and
3291    talk to them about running GNU/Linux.
3292 </p>
3293
3294 <p><b>Q: </b>What kind of computer do I need to use GNU/Linux?<br />
3295 <b>A: </b>Almost any recent computer will do.  If you have an old machine
3296    kicking around, you can install GNU/Linux on it as well.  If it is
3297    at least 5 years old, it should be good enough.
3298 </p>
3299
3300 <p><b>Q: </b>Can I have Windows and GNU/Linux on the same computer?<br />
3301 <b>A: </b>If you can run Windows now, and you have an extra gigabyte (GB) of
3302    disk space to spare; then it should be possible.
3303 </p>
3304
3305 <p><b>Q: </b>What should I bring if I want to install GNU/Linux?<br />
3306 <b>A: </b>You will want to bring:</p>
3307 <ol>
3308 <li>Computer</li>
3309 <li>Monitor and monitor cable</li>
3310 <li>Power cords</li>
3311 <li>Keyboard and mouse</li>
3312 </ol>
3313
3314     </abstract>
3315   </eventitem>
3316
3317   <eventitem date="2002-11-07" time="5:30pm" room="MC4063"
3318   title="The GNU General Public License">
3319     <short>The teeth of Free Software</short>
3320     <abstract>
3321 <p>
3322 <blockquote>
3323 <i>
3324 The licenses for most software are designed to take away your freedom
3325 to share and change it. By contrast, the GNU General Public License
3326 is intended to guarantee your freedom to share and change free
3327 software---to make sure the software is free for all its users.
3328 </i><br/>--- Excerpt from the GNU GPL
3329 </blockquote>
3330 </p>
3331 <p>The GNU General Public License is one of the most influencial
3332 software licenses in this day.  Written by Richard Stallman for the
3333 GNU Project, it is used by software developers around the world to
3334 protect their work.
3335 </p>
3336 <p>
3337 Unfortunately, software developers do not read licenses thoroughly, nor
3338 well.  In this talk, we will read the entire GNU GPL and explain the
3339 implications of its passages.  Along the way, we will debunk some myths
3340 and clarify common misunderstandings.
3341 </p>
3342 <p>
3343 After this session, you ought to understand what the GNU GPL means, how
3344 to use it, and when you cannot use it.  This session should also give
3345 you some insight into the social implications of this work.
3346 </p>
3347     </abstract>
3348   </eventitem>
3349
3350   <eventitem date="2002-11-19" time="4:30pm" room="MC4058"
3351    title="Metaprogramming GPUs">
3352    <short>A talk by Michael McCool of the Computer Graphics Lab.</short>
3353    <abstract>
3354 <p>
3355 Modern graphics accelerators, or "GPUs", have embedded high-performance 
3356 programmable components in the form of vertex and fragment shading units. 
3357 Recently, these units have evolved from 8-bit computations to floating-point,
3358 and other operations provide array gather, scatter, and summation.
3359 These capabilities make GPUs akin to array processors of the 
3360 past, but with a difference: every PC now has one!  I am interested 
3361 in finding the best way to exploit this computational capacity for not
3362 only graphics but for general-purpose computation.
3363 </p><p>
3364 Current APIs permit specification of the programs for GPUs
3365 using an assembly-language level interface.  Compilers for high-level 
3366 shading languages are available, such as NVIDIA's Cg, and OpenGL 2.0 and 
3367 DirectX will also include standardized shading languages.  This talk will 
3368 review these.  However, compilers for these languages read in an external 
3369 string specification, which can be inconvenient.   
3370 </p><p>
3371 However, it is possible, using standard C++, to define a high-level
3372 shading language directly in the API.  Such a language can be nearly
3373 indistinguishable from a special-purpose programming language, yet  
3374 permits more direct interaction with the specification of textures 
3375 (arrays) and parameters, simplifies implementation, and enables
3376 on-the-fly generation, manipulation, and specialization of shader programs.
3377 A shading language built into the API also permits the lifting of
3378 C++ host language type, modularity, and scoping constructs into the shading
3379 language without any additional implementation effort.   Such an
3380 embedded language could be used to program other embedded processors
3381 (such as DSP chips in sound cards) or even to generate machine language
3382 on the fly for the host CPU.
3383 </p>
3384     </abstract>
3385   </eventitem>
3386
3387   <eventitem date="2002-11-16" time="1:30pm" room="York University"
3388   title="Trip to York University">
3389     <short>Going to visit the York University Computer Club</short>
3390     <abstract><p>YUCC and the UW CSC have having a join meeting at York 
3391 University.  Dave Makalsky, the President of YUCC, will be giving a talk on 
3392 Design-by-constract and Eiffel.  Stefanus Du Toit, Vice-President of the UW 
3393 CSC, will be giving a talk on the evil depths of the black art known as C++.
3394 </p><p>Schedule</p>
3395 <ul><li>1:30pm: Leave UW</li>
3396 <li>3:00pm: Arrive at York University.</li>
3397 <li>3:30pm: The Evil side of C++</li>
3398 <li>4:30pm: Design-by-Contract and Eiffel</li>
3399 <li>6:00pm: Dinner</li>
3400 <li>9:00pm: Arrive back at UW</li>
3401 </ul>
3402 </abstract>
3403   </eventitem>
3404
3405   <eventitem date="2002-11-21" time="6:00pm" room="MC2066"
3406   title="Perl 6">
3407     <short>A talk by Simon Law</short>
3408     <abstract>
3409       <p>
3410         Perl, the Practical Extraction and Reporting Language can only
3411         be described as an eclectic language, invented and refined by
3412         a deranged system administrator, who was trained as a
3413         linguist.  This man, however, has declared:
3414       </p>
3415       <blockquote>
3416         <i>
3417           Perl 5 was my rewrite of Perl.
3418           I want Perl 6 to be the community's rewrite of Perl and of the
3419           community.
3420         </i><br/>--- Larry Wall
3421       </blockquote>
3422       <p>
3423         Whenever a language is designed by a committee, it is common
3424         wisdom to avoid it.  Not so with Perl, for it cannot get
3425         worse.  However strange these Perl people seem, Perl 6 is a
3426         good thing coming.  In this talk, I will demonstrate some Perl
3427         5 programs, and talk about their Perl 6 counterparts, to show
3428         you that Perl 6 will be cleaner, friendlier, and prettier.
3429       </p>
3430     </abstract>
3431   </eventitem>
3432
3433   <eventitem date="2002-11-21" time="4:30pm" room="MC2066"
3434    title="Samba and You">
3435     <short>A talk by Dan Brovkovich, Mathsoc's Computing Director</short>
3436     <abstract><p>
3437 Samba is a free implementation of the Server Message Block (SMB)
3438 protocol. It also implements the Common Internet File System (CIFS)
3439 protocol, used by Microsoft Windows 95/98/ME/2000/XP to share files and
3440 printers. </p><p>
3441 SMB was originally developed in the early to mid-80's by IBM and was
3442 further improved by Microsoft, Intel, SCO, Network Appliances, Digital
3443 and many others over a period of 15 years. It has now morphed into CIFS,
3444 a form strongly influenced by Microsoft. </p><p>
3445 Samba is considered to be one of the key projects for the acceptance of
3446 GNU/Linux and other Free operating systems (e.g. FreeBSD) in the
3447 corporate world: a traditional Windows NT/2000 stronghold. </p><p>
3448 We will talk about interfacing Samba servers and desktops with the
3449 Windows world.  From a simple GNU/Linux desktop in your home to the
3450 corporate server that provides collaborative file/printer sharing,
3451 logons and home directories to hundreds of users a day. </p>
3452     </abstract>
3453   </eventitem>
3454
3455   <eventitem date="2002-10-26" time="1:30PM" room="MC2066"
3456   title="GNU/Linux on HPPA">
3457     <short>Carlos O'Donnell talks about &quot;the last of the legacy processors to fall before the barbarian horde&quot;</short>
3458     <abstract>
3459 <p>This whirlwind talk is aimed at providing an overview of the
3460 GNU/Linux port for the HP PARISC processor. The talk will focus on
3461 the &quot;intricacies&quot; of the processor, and in particular the
3462 implementations of the Linux kernel and GNU Libc. After the talk
3463 you should be acutely aware of how little code needs to be written
3464 to support a new architecture! Carlos has been working on the port
3465 for two years, and enjoying the fruits of his labour on a 46-node
3466 PARISC cluster.</p>
3467
3468 <hr />
3469 <p>
3470 Carlos is currently in his 5th year of study at the University
3471 of Western Ontario. This is his last year in a concurrent
3472 Computer Engineering and Computer Science degree. His research
3473 interest range from distributed and parallel systems to low
3474 level optimized hardware design. He likes playing guitar and
3475 just bought a Cort NTL-20, jumbo body, solid spurce top with
3476 a mahogany back. Carlos hacks on the PARISC Linux kernel, GNU libc,
3477 GNU Debugger, GNU Binutils and various Debian packages.
3478 </p>
3479
3480
3481 </abstract>
3482   </eventitem>
3483
3484   <eventitem date="2002-10-26" time="3:00PM" room="MC2066"
3485   title="The Hurd Interfaces">
3486     <short>Marcus Brinkmann, a GNU Hurd developer, talks about the Hurd server interfaces, at the heart of a GNU/Hurd system</short>
3487     <abstract>
3488 <p>The Hurd server interfaces are at the heart of the Hurd system.  They
3489  define the remote procedure calls (RPCs) that are used by the servers, the
3490  GNU C library and the utility programs to communicate with the Hurd system
3491  and to implement the POSIX personality of the Hurd as well as other
3492  features.</p>
3493
3494 <p>This talk is a walk through the Hurd RPCs, and will give an overview of how
3495  they are used to implement the system.  Individual RPCs will be used to
3496  illustrate important or exciting features of the Hurd system in general,
3497  and it will be shown how those features are accessible to the user at the
3498  command line, too.</p>
3499
3500  <hr />
3501
3502  <p>Marcus Brinkmann is a math student at the Ruhr-Universitaet Bochum in
3503  Germany.  He is one of maintainers of the GNU Hurd project and the
3504  initiator of the Debian GNU/Hurd binary distribution.  He designed and
3505  implemented the console subsystem of the Hurd, wrote the FAT filesystem
3506  server, and fixed a lot of bugs, thus increasing the stability and
3507  usability of the system.</p>
3508
3509     </abstract>
3510   </eventitem>
3511
3512   <eventitem date="2002-10-26" time="4:30PM" room="MC2066"
3513   title="A GNU Approach to Virtual Memory Management in a Multiserver Operating System">
3514     <short>Neal Walfield, a GNU Hurd developer, talks about a possible Virtual Memory Management subsystem for the GNU Hurd</short>
3515     <abstract>
3516 <p>Virtual memory management is one of the cornerstones of multiuser
3517 operating systems.  Most systems available today place all of the
3518 policy in a monolithic virtual memory manager, VMM, isolated from the
3519 rest of the system.  Although secure and lightweight, users have no
3520 way to communicate their anticipated memory needs and usage to the
3521 system pager.  As a result, the VMM can only implement a global paging
3522 policy (typically, an approximation of LRU) which may be good on
3523 average but is best for nobody.</p>
3524
3525 <p>With the port of Hurd to the L4 microkernel, this situation is being
3526 readdressed.  Due to its more distributed nature, a centralized
3527 resource manager is not only more difficult to implement efficiently
3528 but also contrary to the philosophy of the rest of the system.  We are
3529 currently exploring a model whereby each program is fully self-paged
3530 and all compete for memory from a physical memory server.  This talk
3531 will first discuss how paging currently works in Mach and other
3532 systems.  An argument for an external paging policy will then be
3533 presented followed by the requirements of such a design and the design
3534 itself.</p>
3535
3536 <hr />
3537
3538 <p>Neal Walfield, a GNU Hurd developer, is from the University of Massachusetts
3539 Lowell.  Neal spent the summer of 2002 at University of Karlsruhe working
3540 on porting the GNU Hurd to L4.</p>
3541
3542     </abstract>
3543   </eventitem>
3544
3545   <eventitem date="2002-10-17" time="5:30PM" room="MC2065"
3546   title="Debian in the Enterprise">
3547     <short>A talk by Simon Law</short>
3548     <abstract>
3549 <p>The Debian Project produces a &quot;Universal Operating System&quot; that is
3550 comprised entirely of Free Software.  This talk focuses on using Debian
3551 GNU/Linux in an enterprise environment.  This includes:</p>
3552 <ul>
3553   <li>Where Debian can be deployed</li>
3554   <li>Strategic advantages of Debian</li>
3555   <li>Ways for business to give back to Debian</li>
3556 </ul>
3557    </abstract>
3558   </eventitem>
3559
3560   <eventitem date="2002-11-12" time="4:30PM" room="MC4058"
3561   title="Automatic Memory Management and Garbage Collection">
3562     <short>A talk by James A. Morrison</short>
3563     <abstract>
3564 <p>
3565   Do you ever wonder what java is doing while you wait?  Have you ever used
3566 Modula-3?  Do you wonder how lazily you can Mark and Sweep?  Would you like to
3567 know how to Stop-and-Copy?
3568 </p><p>
3569  Come out to this talk and learn these things and more.  No prior knowledge of
3570 Garbage Collection or memory management is needed.
3571 </p>
3572    </abstract>
3573   </eventitem>
3574
3575 </eventdefs>
3576