Added PwP
[www/www.git] / events.xml
1 <eventdefs>
2 <!-- Fall 2003 -->
3
4   <eventitem date="2003-11-05" time="4:30 PM - 8:30 PM"
5    room="Grad House Pub (Green Room)" title="CS Pints With Profs">
6    <short>Come have a pint with your favourite CS profs!</short>
7    <abstract>
8    <p>Come meet CS profs in a relaxed atmosphere this Wednesday at
9    the Grad House (by South Campus Hall). This is your chance to meet those CS profs
10    you enjoyed in lectures in person, have a chat with them
11    and find out what they're doing outside the lecture halls.</p>
12
13    <p>We'll be providing free food, including hamburgers and nachos,
14    and the Grad House offers a great selection of drinks.</p>
15
16    <p>If you'd like to invite a particular prof, stop by on the third
17    floor of the MC (outside of the Comfy) to pick up an invitation.</p>
18
19    <p>Persons of all ages are welcome!</p>
20    </abstract>
21   </eventitem>
22
23
24   <eventitem date="2003-10-21" time="4:30 PM - 5:30 PM" room="MC2065"
25    title=".NET &amp; Linux: When Worlds Collide">
26   <short>A talk by James Perry</short>
27   <abstract>
28
29   <p>.NET is Microsoft's new development platform, including amongst
30   other things a language called C# and a class library for various
31   operating system services. .NET aims to be portable, although it is
32   currently mostly only used on Windows systems.</p>
33
34   <p>With the full backing of Microsoft, it seems unlikely that .NET
35   will disappear any time soon. There are several efforts underway to
36   bring .NET to the GNU/Linux platform. Hosted by the Computer Science
37   Club, this talk will discuss a number of the issues surrounding .NET
38   and Linux.</p>
39
40   </abstract>
41   </eventitem>
42
43   <eventitem date="2003-10-22" time="4:30 PM - 5:30 PM" room="MC4061"
44    title="Real-Time Graphics Compilers">
45   <short>Sh is a GPU metaprogramming language developed at the UW
46   Computer Graphics Lab</short>
47   <abstract>
48
49   <p>Sh is a GPU metaprogramming language developed at the University of
50   Waterloo Computer Graphics Lab. It allows graphics programmers to
51   write programs which run directly on the GPU (Graphics Processing
52   Unit) using familiar C++ syntax. Furthermore, it allows
53   metaprogramming of such programs, that is, writing programs which
54   generate other programs, in an easy and natural manner.</p>
55
56   <p>This talk will give a brief overview of how Sh works, the design of
57   its intermediate representation and the (still somewhat simplistic)
58   optimizer that the current reference implementation has and problems
59   with applying traditional compiler optimizations.</p>
60
61   <p>Stefanus Du Toit is an undergraduate student at the University of
62   Waterloo.  He is also a Research Assistant for Michael McCool from the
63   University of Waterloo Graphics Lab. Over the Summer of 2003 Stefanus
64   reimplemented the Sh reference implementation and designed and
65   implemented the current Sh optimizer.</p>
66   </abstract>
67   </eventitem>
68
69   <eventitem date="2003-10-17" time="3:00 PM" room="MC3001 (Comfy)"
70    title="Poster Team Meeting">
71   <short>More free pizza from the Poster Team</short>
72   <abstract>
73   <p>Are you interested in getting involved in the Computer Science
74   Club?</p>
75
76   <p>Come on out to the second meeting of our Poster Team, a bunch of
77   students helping out with promotion for our events. The agenda for
78   this meeting will include painting posters, designing event
79   invitations, and organizing poster runs. Once again, we will be
80   serving free pizza!</p>
81
82   <p>See you there!</p>
83   </abstract>
84   </eventitem>
85
86   <eventitem date="2003-10-16" time="4:00 PM - 5:30 PM" room="MC2037"
87    title="UNIX 103: Development Tools">
88   <short>GCC, GDB, Make</short>
89   <abstract>
90   <p>This tutorial will provide you with a practical introduction to GNU 
91   development tools on Unix such as the gcc compiler, the gdb debugger
92   and the GNU make build tool.</p>
93
94   <p>This talk is geared primarily at those mostly unfamiliar with these
95   tools.  Amongst other things we will introduce:</p>
96
97   <ul>
98   <li>gcc options, version differences, and peculiarities</li>
99   <li>using gdb to debug segfaults, set breakpoints and find out what's
100     wrong</li>
101   <li>tiny Makefiles that will compile all of your 2nd and 3rd year CS
102     projects.</li>
103   </ul>
104
105   <p>If you're in second year CS and unfamiliar with UNIX development it
106   is highly recommended you go to this talk. All are welcome, including
107   non-math students.</p>
108
109   <p>Arrive early!</p>
110   </abstract>
111   </eventitem>
112
113   <eventitem date="2003-10-02" time="4:00 PM - 5:30 PM" room="MC2037"
114    title="UNIX 101: Text Editors">
115   <short>vi vs. emacs: The Ultimate Showdown</short>
116   <abstract>
117 <p>
118 Have you ever wondered how those cryptic UNIX text editors work? Have you
119 ever woken up at night with a cold sweat wondering "Is it  CTRL-A, or CTRL-X
120 CTRL-A?" Do you just hate pico with a passion?</p>
121
122 <p>Then come to this tutorial and learn how to use vi and emacs!</p>
123
124 <p>Basic UNIX commands will also be covered. This tutorial will be especially
125 useful for first and second year students.</p>
126
127   </abstract>
128   </eventitem>
129
130   <eventitem date="2003-10-06" time="4:00 PM" room="MC3001 (Comfy)"
131    title="Poster Team Meeting">
132   <short>Join the Poster Team and get Free Pizza!</short>
133   <abstract>
134     <ul>
135     <li>Do you like computer science?</li>
136     <li>Do you like posters?</li>
137     <li>Do you like free pizza?</li>
138     </ul>
139     <p>If the answer to one of these questions is yes, then come
140 out to the first meeting of the Computer Science Club Poster Team! The
141 CSC is looking for interested students to help out with promotion and
142 publicity for this term's events. We promise good times and free
143 pizza!</p>
144   </abstract>
145   </eventitem>
146
147   <eventitem date="2003-09-17" time="4:30 PM" room="MC3001 (Comfy)"
148    title="CSC Elections">
149   <short>CSC Fall 2003 Elections</short>
150   <abstract>
151    <p>Elections will be held on Wednesday, September 17, 2003 at 4:30 PM in the
152
153    Comfy Lounge, MC3001.</p>
154
155    <p>I invite you to nominate yourself or others for executive positions,
156    starting immediately. Simply e-mail me at cro@csclub.uwaterloo.ca 
157    with the name of the person who is to be nominated and the position
158    they're nominated for.</p>
159
160    <p>Nominees must be full-time undergraduate students in Math. Sorry!</p>
161
162    <p>Positions open for elections are:</p>
163
164    <ul><li>President: Organises the club, appoints committees, keeps everyone busy.
165    If you have lots of ideas about the club in general and like bossing
166    people around, go for it!</li>
167
168    <li>Vice President: Organises events, acts as the president if he's not
169    available. If you have lots of ideas for events, and spare time, go
170    for it!</li>
171
172    <li>Treasurer: Keeps track of the club's finances. Gets to sign cheques
173    and stuff. If you enjoy dealing with money and have ideas on how to
174    spend it, go for it!</li>
175
176    <li>Secretary: Takes care of minutes and outside correspondence. If you
177    enjoy writing things down and want to use our nifty new letterhead
178    style, go for it!</li></ul>
179
180    <p>Nominations will be accepted until Tuesday, September 16 at 4:30 PM.</p>
181
182    <p>Additionally, a Sysadmin will be appointed after the elections. If you
183    like working with unix systems and have experience setting up and
184    maintaining them, go for it!</p>
185
186    <p>I hope that lots of people will show up; hopefully we'll have a great
187    term with plenty of events. We always need other volunteers, so if you
188    want to get involved just talk to the new exec after the
189    meeting. Librarians, webmasters, poster runners, etc. are always
190    sought after!</p>
191
192    <p>There will also be free pop.</p>
193
194    <p>Memberships can be purchased at the elections or at least half an hour
195    prior to at the CSC. Only undergrad math members can vote, but anyone can
196    become a member.</p>
197
198   </abstract>
199   </eventitem>
200 <!-- Spring 2003 -->
201
202   <eventitem date="2003-07-31" time="4:30 PM" room="MC4064"
203    title="LaTeX and Work Reports">
204   <short>Writing beautiful work reports</short>
205   <abstract> 
206
207   <p>The work report is a familiar chore for any co-op student.  Not only is
208   there a report to write, but to add insult to injury, your report is
209   returned if you do not follow your departmental guidelines.</p>
210
211   <p>Fear no more!  In this talk, you will learn how to use LaTeX and a
212   specially developed class to automatically format your work reports.
213   This talk is especially useful to Mathematics, Computer Science,
214   Electrical &amp; Computer Engineering, and Software Engineeering co-op
215   students about to go on work term.</p>
216
217   <p><a
218   href="http://www.eng.uwaterloo.ca/~sfllaw/programs/uw-wkrpt/">http://www.eng.uwaterloo.ca/~sfllaw/programs/uw-wkrpt/</a></p>
219
220   </abstract>
221   </eventitem>
222
223   <eventitem date="2003-07-24" time="4:30 PM" room="MC2037"
224    title="vi: the visual editor">
225   <short>It's not 6.</short>
226   <abstract> 
227
228   <p>In 1976, a University of California Berkeley student by the name of
229   Bill Joy got sick of his text editor, ex.  So he hacked it such that
230   he could read his document as he wrote it.  The result was "vi", which
231   stands for VIsual editor.   Today, it is shipped with every modern
232   Unix system, due to its global influence.</p>
233
234   <p>In this talk, you will learn  how to use vi to edit documents
235   quickly and efficiently.  At the end, you should be able to:</p>
236
237   <ul>
238   <li>Navigate and search through documents</li>
239   <li>Cut, copy, and paste across documents</li>
240   <li>Search and replace regular expressions</li>
241   </ul>
242
243   <p>If you do not have a Math computer account, don't panic; one will be lent
244   to you for the duration of this class.</p>  
245
246   </abstract>
247   </eventitem>
248
249   <eventitem date="2003-07-24" time="3:00 PM" room="CSC Office" title="July 
250   Exec Meeting">
251   <short> See Abstract for minutes </short>
252   <abstract>
253   <pre>
254 --paying Simon for Sugar
255 -Unanimous yea.
256 -ACTION ITEM: Mark
257         Expense this to MathSoc in lieu of foreign speaker.
258
259 --We currently have (including CD-R and pop-income not 
260 currently in safe) $972.85
261 -We have $359.02 on budget that we can expense to MathSoc.
262
263 --We got MEF money for books and video card. Funding for 
264 wireless microphone is dependent on whether MFCF is 
265 willing to host it.
266 -Funding for casters was denied.
267 -Shopping for the Video card.
268 -Expecting it after auguest (Stefanus shopping for it.)
269 -Will have to hear back regarding the microphone, best to 
270 delay that now, discuss it with MEF.
271         -Better to do it this term, so it doesn't get lost.
272         -Let MFCF know about this concern.
273 -Regarding books, can be done anytime before September.
274
275 --Events feedback
276         -Generally, Jim Eliot talk when really well.
277                 -Apparently he was generally offensive.
278         -When was the LaTeX talk? End of the month.
279         -Kegger at Jim's place on the 16th.
280
281 --Getting people in on the 6th, 7th, 8th for csc commercials
282 filmed by Jason
283         -Hang out in here, and he'll make a CSC commercial.
284         -Co-ordinate when everyone should be in here, so we can email Jason.
285
286 --CEO progress
287         -CEO needs it's database changed to use ISBN as a primary key.
288         -Needs functionality to take out/return books.
289
290 --Mark just entered financial stuff into GNUcash
291
292 --Choose CRO for next term.
293 -Stefanus has expressed desire not to be CRO.
294 -Gary Simmons was suggested (and he accepted)
295 -Unanimous yea
296
297 --Mike Biggs has to get here naked.
298         -Four unanimous votes.
299         -Nakedness only applies to getting here, not being here.
300
301
302 From last meeting:
303 ACTION ITEM: Biggs and Cass
304 -get labelmaker tape, masking tape
305 whiteboard makers, coloured paper, CD sleeves
306 -keep reciepts for CSC office expenses.
307
308 How is the progess on allowing executives and voters to be non-math
309 members?
310 -The vote is coming up Monday.
311 -Proposal: Anyone who is a paying member can be a member
312         -So you can either do two things:
313         Pay MathSoc fees, or
314         Get your faculty society to recognize CSC as a club.
315
316 Stefanus wanted to mention that we shoudl talk to Yolanda, 
317 Craig or Louie about a EYT event for frosh week.
318 -Organized by Meg.
319 -Sugar Mountain trying to hook all the Frosh
320 ACTION ITEM: Jim
321 -Email Meg
322
323 Reminder for Next Year's executive.
324 -September 16th @ 5:00pm, get a table for Clubs day, and 17th 
325 and 18th, maintain the booth (full day events).
326 -Update pamphlets.
327 ACTION ITEM: Gary
328 -There should be executive before then 
329
330 Note: There needs to be a private section in the CSC Procedures Manual.
331 (Only accessible by shell)
332 ACTION ITEM: Simon
333 -Do it.
334
335 ACTION ITEM: Mike
336 -Talk to Plantops about:
337 -Locks on doors
338 -Mounting corkboard.
339 -Talk about CSC Sign
340   </pre>
341   </abstract>
342
343   </eventitem>
344   <eventitem date="2003-06-27" time="2:30 PM" room="DC1302"
345    title="Friday Flicks">
346   <short> SIGGRAPH Electronic Theatre Showing </short>
347   <abstract>
348   <p>
349    SIGGRAPH is the ACM's Special Interest Group for Graphics and
350    simultaneously the world's largest graphics conference and
351    exhibition, where the cutting edge of graphics research is presented
352    every year.
353    </p><p>
354     With support from UW's Computer Graphics Lab, the CSC invites you to
355     capture a glimpse of SIGGRAPH 2002. We will be presenting the
356     Electronic Theatre showings from 2002, demonstrating the best of the
357     animated, CG-produced movies presented at SIGGRAPH.
358     </p><p> Don't miss this free showing!</p>
359   </abstract>
360   </eventitem>
361   <eventitem date="2003-07-08" time="4:00 PM" room="MC2065"
362    title="Mainframes and Linux">
363   <short>A talk by Jim Elliott. Jim is responsible for IBM's in Open Source
364   activities and IBM's mainframe operating systems for Canada and the 
365   Carribbean.</short>
366   <abstract>
367   <p>
368   Linux and Open Source have become a significant reality in the
369   working world of Information Technology. An indirect result has been a
370   "rebirth" of the mainframe as a strategic platform for enterprise
371   computing. In this session Jim Elliott, IBM's Linux Advocate, will provide
372   an overview of these technologies and an inside look at IBM's participation
373   in the community. Jim will examine Linux usage on the desktop, embedded
374   systems and servers, a reality check on the common misconceptions that
375   surround Linux and Open Source, and an overview of the history and current
376   design of IBM's mainframe servers.</p>
377   <p>
378   Jim Elliott is the Linux Advocate for IBM Canada. He is responsible
379   for IBM's participation in Linux and Open Source activities and IBM's
380   mainframe operating systems in Canada and the Caribbean. Jim is a popular
381   speaker on Linux and Open Source at conferences and user groups across the
382   Americas and Europe and has spoken to over 300 organizations over the past
383   three years. Over his 30 years with IBM he has been the co-author of over
384   15 IBM publications and he also coordinated the launch of Linux on IBM
385   mainframes in the Americas. In his spare time, Jim is addicted to reading
386   historical mystery novels and travel to their locales.
387   </p>
388   <p><a href="http://www.vm.ibm.com/devpages/jelliott/events.html">Slides</a>
389   </p>
390   </abstract>
391   </eventitem>
392   <eventitem date="2003-07-04" time="3:30 PM" room="University of Guelph"
393    title="Guelph Trip">
394   <short>Come Visit the University of Guelph's Computer Science Club</short>
395   <abstract><p>
396    The University of Waterloo Computer Science Club is going to visit the
397    University of Guelph Computer Science Club.  There will be a talk given
398    as well as dinner with a fun social atmosphere.</p><p>Drivers Wanted</p>
399    <p>Cancelled -- sorry Guelph cancelled on us.</p>
400   </abstract>
401   </eventitem>
402   <eventitem date="2003-07-17" time="4:30 PM" room="MC4064"
403    title="Sh">
404   <short>Metaprogramming your way to stunning effects.</short>
405   <abstract>
406   <p>
407   Modern graphics processors allow developers to upload small "shader
408   programs" to the GPU, which can be executed per-vertex or even
409   per-pixel during the rendering. Such shaders allow stunning effects to
410   be performed in real-time, but unfortunately aren't very easy to
411   program since one generally has to write them at the assembly level.
412   </p><p>
413   Recently a few high-level languages for shader programming have become
414   available. Sh, a result of research at UW, is one such language. It
415   allows programming powerful shaders in simple and intuitive ways. Sh
416   is particularily interesting because of the way it is
417   implemented. Instead of coming up with a language grammar and writing
418   a full-fledged compiler, Sh is implemented as a C++ library, and
419   shader programs are effectively written in C++. The actual compilation
420   then takes place in a manner similar to JIT (Just-in-time)
421   compilers. This has many advantages over the traditional approach,
422   including C++'s familiar syntax for users, and much less work for the
423   Sh implementers.
424   </p><p>
425   In this talk I will give an overview of GPUs and the Sh language as
426   well as some interesting details on how Sh was implemented.
427   </p><p> <!-- Is there a bio tag -->
428   Stefanus Du Toit is a research assistant at the University of
429   Waterloo. He has implemented the current version of Sh from scratch
430   and is actively developing it under supervision of Michael McCool, the
431   original designer of the language.
432   </p>
433   </abstract>
434   </eventitem>
435   <eventitem date="2003-06-19" time="4:30 PM" room="MC2037"
436    title="vi: the visual editor">
437   <short>It's not 6.</short>
438   <abstract> 
439
440   <p>In 1976, a University of California Berkeley student by the name of
441   Bill Joy got sick of his text editor, ex.  So he hacked it such that
442   he could read his document as he wrote it.  The result was "vi", which
443   stands for VIsual editor.   Today, it is shipped with every modern
444   Unix system, due to its global influence.</p>
445
446   <p>In this talk, you will learn  how to use vi to edit documents
447   quickly and efficiently.  At the end, you should be able to:</p>
448
449   <ul>
450   <li>Navigate and search through documents</li>
451   <li>Cut, copy, and paste across documents</li>
452   <li>Search and replace regular expressions</li>
453   </ul>
454
455   <p>If you do not have a Math computer account, don't panic; one will be lent
456   to you for the duration of this class.</p>  
457
458   </abstract>
459   </eventitem>
460
461   <eventitem date="2003-06-12" time="3:30 PM" room="MC3036 CSC Office" title="June 12 Exec Meeting">
462   <short>Have an issue that should be brought up? We'd love to hear it!</short>
463   <abstract>
464   <pre>
465   
466 Budget: All the money we requested
467         --No money from Pints from Profs
468         --MathSoc has promised us $1250
469         
470 Feedback from Completed Events
471         UNIX Talks: 17 people for first
472                         --12 people for second
473                         --Things going well
474                         --Last talk today
475                         --VI next week
476         IPsec
477         --Sparse crowd
478         --People Jim didn't know talked to him for 1/2 hour
479
480         History of CSC talk went well
481         --Good variety of people
482
483         Pints with Profs
484         --NO CS Profs
485         --Only 1 E&amp; CE prof
486         --Only 2 Math profs
487         --Jim will harrass the profs at the School of CS Council meeting.
488         
489         We're starting to fall behind in planning
490         
491         RoShamBo rules
492         --Got a web site up
493         --Might have to move RSB back
494         --International site has a few test samples
495         --Stefanus had some ideas
496         --Coding will probably take an afternoon/evening
497         --We need volunteers to run the competition
498         --We have volunteers to code: Phil and Stefanus
499         
500         ACTION ITEM: Phil and Stefanus
501         --code whatever you volunteered to code for.
502         
503         --Mike intends to visit classes and directly advertise
504         --Email Christina Hotz 
505
506         --GH guy: Mike has an abstract, will have posters by tomorrow
507         
508         CSC Movie Night
509         --Mathnet, Hackers, Wargames, Tron
510         --Mike will get a room
511         --Will be closed member
512
513         Mike McCool is offering rooms for showing SIGGRAPH 
514         ACTION ITEM: Jim
515         -check with Mike McCool.
516         
517         ACTION ITEM: Mike 
518         -Make posters for Movie Nights
519
520         When is other movie night? (Will plan some time in July)
521
522         Who is our foreign speaker?
523         Action Item: jelliot@ca.ibm.com (Check name first) about 
524         getting a foreign speaker -- Note: Has already been contacted.
525
526         Simon got money from Engsoc
527
528         Cass meeds coloured paper (CSC is out)
529
530         ACTION ITEM: Cass and Mark 
531         --get labelmaker tape, masking tape, 
532         whiteboard makers, coloured paper 
533         --keep reciepts for CSC office expenses
534
535         NOTICE: Mike is now Imapd
536
537         Simon distibuted budget list
538         Mark got the money from Mathsoc for last budget, deposited it.
539
540         ACTION ITEM:Mark
541         --Get MEF funding by July 4th (equipment)
542         ACTION ITEM: Simon
543         --Get WEEF funding by June 27th (book)
544
545         Jim still working on allowing executives and voters to be 
546         non-math members
547
548         We get free photocopying from MathSoc
549         ACTION ITEM: Mike 
550         --write down code for free photocopying from MathSoc
551         
552         Simon has been able to get into the cscdisk account, still 
553         looking into getting into the cscceo account.
554
555         Damien got an e-mail stating that the files for cscdisk are 
556         out of date.
557         
558         ACTION ITEM: Simon
559         --provide SSH key to Phil for getting into cscdisk, cscceo, etc...
560         --Renumber bootup scripts for sugar and powerpc so that they 
561         boot up happily.
562
563         ACTION ITEM: Mike needs to do all the plantops stuff again.
564
565         ACTION ITEM: Mike -- &quot;Stapler if you say please&quot; sign.
566
567         CVS Tree for CEO has been exported.
568         Damien has volunteered to finish CEO (found by Cass)
569
570         All books with barcodes have been scanned
571         All books without barcodes need to be bar-coded.
572
573         ACTION ITEM: Mark
574         --Find a Credit-card with a $500 or less limit.
575
576         Note: There needs to be a private section in the 
577         CSC Procedures Manual. (Only accessible by shell)
578
579         Stefanus Wanted to mention that we should talk to 
580         Yolanda, Craig or Louie about a EYT event for Frosh Week.
581   </pre>
582   </abstract>
583   </eventitem>
584
585   <eventitem date="2003-06-10" time="4:30 PM" room="MC2066"
586    title="A Brief History of Computer Science">
587   <abstract>
588
589 <p>War, insanity, espionage, beauty, domination, sacrifice, and tragic
590 death... not what one might associate with the history of computer
591 science. In this talk I will focus on the origin of our discipline in
592 the fields of engineering, mathematics, and science, and on the
593 complicated personalities that shaped its evolution. No advanced
594 technical knowledge is required.</p>
595
596   </abstract>
597   </eventitem>
598
599   <eventitem date="2003-06-09" time="5:00 - 9:00 PM" room="The Grad House"
600    title="Pints with Profs!">
601   <short>Get to know your profs and be the envy of your friends!</short>
602   <abstract>
603
604 <p>Come out and meet your professors!!  This is a great opportunity to
605 meet professors for Undergraduate Research jobs or to find out who you might
606 have for future courses.  One and all are welcome!</p>
607
608 <p>Best of all... free food!!!</p>
609
610   </abstract>
611   </eventitem>
612
613   <eventitem date="2003-05-29" time="4:30 PM" room="MC2037"
614    title="Unix 101: First Steps With Unix">
615   <short>Learn Unix and be the envy of your friends!</short>
616   <abstract> 
617
618   <p>This is the first in a series of seminars that cover the use of the
619   Unix Operating System.  Unix is used in a variety of applications, both
620   in academia and industry. We will provide you with hands-on experience
621   with the Math Faculty's Unix environment in this seminar.</p> 
622
623   <p>Topics that will be discussed include:</p>
624
625   <ul>
626   <li>Navigating the Unix environment</li>
627   <li>Using common Unix commands</li>
628   <li>Using the PICO text editor</li>
629   <li>Reading electronic mail and news with PINE</li>
630   </ul>
631
632   <p>If you do not have a Math computer account, don't panic; one will be lent
633   to you for the duration of this class.</p>  
634
635   </abstract>
636   </eventitem>
637
638   <eventitem date="2003-06-05" time="4:30 PM" room="MC2037"
639    title="Unix 102: Fun With Unix">
640   <short>Talking to your Unix can be fun and profitable</short>
641   <abstract> 
642
643   <p>This is the second in a series of seminars that cover the use of the
644   Unix Operating System.  Unix is used in a variety of applications, both in
645   academia and industry.  We will provide you with hands-on experience with
646   the Math Faculty's Unix environment in this tutorial.</p>
647
648   <p>Topics that will be discussed include:</p>
649
650   <ul>
651   <li>Interacting with Bourne and C shells</li>
652   <li>Editing text with the vi text editor</li>
653   <li>Editing text with the Emacs display editor</li>
654   <li>Multi-tasking and the screen multiplexer</li>
655   </ul>
656
657   <p>If you do not have a Math computer account, don't panic; one will be
658   lent to you for the duration of this class</p>
659
660   </abstract>
661   </eventitem>
662
663   <eventitem date="2003-06-12" time="4:30 PM" room="MC2037"
664    title="Unix 103: Scripting Unix">
665   <short>You too can be a Unix taskmaster</short>
666   <abstract> 
667
668   <p>This is the third in a series of seminars that cover the use of the
669   Unix Operating System.  Unix is used in a variety of applications, both in
670   academia and industry.  We will provide you with hands-on experience with
671   the Math Faculty's Unix environment in this tutorial.</p>
672
673   <p>Topics that will be discussed include:</p>
674
675   <ul>
676   <li>Shell scripting</li>
677   <li>Searching through text files</li>
678   <li>Batch editing text files</li>
679   </ul>
680
681   <p>If you do not have a Math computer account, don't panic; one will be
682   lent to you for the duration of this class</p>
683
684   </abstract>
685   </eventitem>
686
687 <eventitem date="2003-05-22" time="4:30 PM" room="MC3036 CSC Office" title="May 22 Exec Meeting">
688 <short>The execs discuss what needs discussion</short>
689 <abstract>
690 <pre>
691
692 Minutes for CSC Exec Meeting
693 May 22, 2003
694
695
696 * Add staff to burners group.
697         -- Only office staff (people who do stuff) on burners list
698         -- No objections from executives
699
700 * We still need a webmaster, imapd
701         -- Action Item: Mike
702                 --Check for pop delivery services (Like Grocery Gateway)
703                 so that we can replace imapd with an automated cronjob
704                 -- If this gets implemented, we must make sure that 
705                 someone is around to receive the pop whenever it is 
706                 delivered. 
707
708 * Budgets
709         Action Item: Simon
710                 -- Make sure execs receive a copy of the proposed budget
711         Action Item: Mark
712                 -- Look into claiming money from Mathsoc for the last 
713                 term.
714         --Will be looked over the week after next Monday at the Mathsoc
715         Budget meeting.
716         --June 27th is the WEF (Engineering Endowment Fund) deadline
717         --EngSoc proposal for donations by the end of the month
718         -- Around 15 events planned
719                 --Foreign Speaker
720                         --CS Departmant will pay for flight
721                         -- We can pay local expenses
722                 --Pints with Profs
723                 --Ro-Sham-Bo
724                 
725 *Changes in the MathSoc Clubs Policy
726         Action Item: Jim and Stefanus
727                 --Bring thus up with MathSoc
728                 --Might be good to talk to Bioinformatics about this, as 
729                 they have science faculty members to take care of as well. 
730         --Major issue: People who revoke their Mathsoc fees can still be
731         voting  members
732         --We want it so that only people who have paid dues to Mathsoc 
733         can vote.
734         --Execs should not take back fees, as that is bad form.
735         --All execs unanimously agreed with this proposal
736
737 *Confirming that we have free printing and photocopying
738         Action Item: Mark
739                 --Does Faculty of Math billing code apply to CSC 
740                 (as Faculty of Math department?)
741                 -- Procedures manual has a billing code, but it should 
742                 be confirmed.
743                 -- Ask MUO, then Shirley after that.
744         Action Item: Simon
745                 --Apparently there is a special Watcard that provides 
746                 free printing from MFCF
747                 --We do not know what account it is mapped to, 
748                 or the password.
749
750 * Getting csc_disk, csc, csc_ceo accounts on undergrad to work again.
751         Action Item: Phil
752                 -- Get csc-disk back up for student use.
753                 -- What group permissions do we need?
754                 -- CSC-Disk should be used as a repository for custom 
755                 window managers, Mozilla, etc... (selling factor for
756                 CSC accounts)
757                 -- We should also have an announcement (MOTD, perhaps?) 
758                 that we are providing and supporting this software.
759                         --Consider: Having university-wide accessible 
760                         binaries might be a pain, as different machines
761                         might require different compilations.
762                 -- CSC-Disk is full of user data. Should that be blown away?
763
764 *Getting locker #7 from MathSoc (Don't we already have lockers 788 and 
765 789?)
766         --Why were the locks snipped? (Bring up at council meeting)
767         --We would prefer one combo-lock and one key-lock.
768
769 * Review of the CSC office organization
770         Action Item: Damien
771                 --Give Mike sudo access for shutdown
772                         --Will be rewiring stuff on Saturday
773                                 --involves re-plugging machines
774         Action Item: Simon
775                 --Get rubber wheels for chairs
776         
777         Action Item: Mike
778                 -- Ask PlantOps about:
779                         --Waxing floors
780                         --Installing Electronic Lock (asap)
781                                 --According to Faculty of Math, 
782                                 we shouldn't need keys.
783                                 --Currently, we still need keys
784                                 --It is kosher to install Electronic lock
785                                 --This provides access right control as 
786                                 compared to key-control.                
787                                 --Might be long term project.
788                                 --Will green men do it?
789                         --Steam-clean chairs (at least once a term)
790                         --Cork-board
791                         --Making ugly wall prettier
792                                 --PlantOps knows about office 
793                                 organization, making environment better.
794         --Whiteboards need to be put up
795         --Proposal: Cork-board on pillar (no objections)
796         --Metal frames on Whiteboard will be in least annoying place
797
798 *Do we provide public stapler access?
799         --People are often unappreciative and rude
800         --Sign -  "Stapler if you say please" -- Unanimously voted 
801                                                  stapler policy
802         
803 *MathSoc Sign
804         --Action Item: Jim
805                 --Find out where to get CSC sign before Monday so we 
806                 can claim it in old budget. 
807
808 * Librarian's Report
809         --Action Item: Jim
810                 --Find perl volunteer to finish CEO
811                 --Force Stefanus to export CVS tree and put onto Peri
812         
813         --Books were scanned into system with help of Mark
814         --All books with valid barcodes entered into system on 
815         May 20th
816         --Books without valid barcodes are not in system
817                 --Someone needs to do it
818         --Plan is to implement Dewey decimal system
819                 --May be inefficient as all books are about CS
820                 --We will figure out a system later
821         --No plans to purchase new books
822         --Librarian's Request:  Office Staff should not lend out books 
823         that do not have barcodes (No objects to request) 
824         --We are still using /media/iso/request to track books
825         --Should be charge late fees for books?
826         --We should have money in budget for repairing,maintaining books
827         --Before spending money on maintaining books, check if DC will 
828         do it
829                 --will it be cheaper/easier/better?
830
831 *Setting up extra quota for fun and profit.
832         -- We don't implement quota properly right now
833         -- Low demand for extra quota
834         -- Counterpoint: Old CSC made tons of money
835         -- Counter-counter-point: It's not that necessary for extra 
836         quota nowadays. 
837         -- Executives voted against proposal.
838
839 *Jim will spam with an update about the term
840         --Consider making it opt-in
841         --One email from a service you are using should be considered 
842         reasonable mass mailing
843
844 *Should Jim bring anything up at the MathSoc meeting?**
845         -- Has a list
846
847 * Student branches for ACM and IEEE
848         Action Item: Gaelan
849                 --Contact IEEE Computing Society in UW and ask if they want 
850                 to merge or transfer society to us
851         --Simon volunteers to be put down as exec for ACM
852                 --ACM rules state requirement that exec is a ACM member
853         --Do we renew Calum's ACM membership?
854                 --Yes (3 Yes; 1 No; 1 Abstention)
855         --ACM membership money in budget
856         --ACM Student chapter form has not come in
857
858 * What to do with the donated Procedures Manual?
859         --Term Task for webpage:
860                 --Put procedures manual on web-page.
861                 --Merge with current manual
862         --We don't have a hard copy
863         --Would be a good thing to read.
864         --Many parts need updating
865
866 </pre>
867 </abstract>
868 </eventitem>
869
870 <eventitem date="2003-05-14" time="4:30 PM" room="MC3001 Comfy Lounge"
871  title="Spring 2003 Elections">
872  <short>Come on out and vote for your exec!</short>
873  <abstract>
874 <p>Elections will be held on Wednesday, May 14, 2003 at 4:30 PM in the
875 Comfy Lounge, MC3001.</p>
876
877 <p>I invite you to nominate yourself or others for executive positions,
878 starting immediately. Simply e-mail me at sjdutoit@uwaterloo.ca or
879 cro@csclub.uwaterloo.ca with the name of the person who is to be
880 nominated and the position they're nominated for.</p>
881
882 <p>Nominees must be full-time undergraduate students in Math. Sorry!</p>
883
884 <p>Positions open for elections are:</p>
885
886 <ul>
887 <li>
888 President: Organises the club, appoints committees, keeps everyone busy.
889 If you have lots of ideas about the club in general and like bossing
890 people around, go for it!
891 </li>
892
893 <li>
894 Vice President: Organises events, acts as the president if he's not
895 available. If you have lots of ideas for events, and spare time, go
896 for it!
897 </li>
898
899 <li>
900 Treasurer: Keeps track of the club's finances. Gets to sign cheques
901 and stuff. If you enjoy dealing with money and have ideas on how to
902 spend it, go for it!
903 </li>
904
905 <li>
906 Secretary: Takes care of minutes and outside correspondence. If you
907 enjoy writing things down and want to use our nifty new letterhead
908 style, go for it!
909 </li>
910 </ul>
911
912 <p>Nominations will be accepted until Tuesday, May 13 at 4:30 PM.</p>
913
914 <p>Additionally, a Sysadmin will be appointed after the elections. If you
915 like working with unix systems and have experience setting up and
916 maintaining them, go for it!</p>
917
918 <p>I hope that lots of people will show up; hopefully we'll have a great
919 term with plenty of events. We always need other volunteers, so if you
920 want to get involved just talk to the new exec after the
921 meeting. Librarians, webmasters, poster runners, etc. are always
922 sought after!</p>
923
924 <p>There will also be free pop, and if I remember, timbits :).</p>
925
926 <p>Memberships can be purchased at the elections. Only undergrad math
927 members can vote, but anyone can become a member.</p>
928
929 <p>Don't forget! Mark it on your calendar/wrist watch/PDA/brain implant!</p>
930
931  </abstract>
932 </eventitem>
933
934 <!-- Winter 2003 -->
935
936   <eventitem date="2003-02-04" time="4:30 PM" room="MC2037"
937    title="Unix 101 Tutorial">
938   <short>Learn Unix and be the envy of your friends!</short>
939   <abstract> 
940
941   <p>This is the first in a series of seminars that cover the use of the
942   UNIX Operating System.  UNIX is used in a variety of applications, both
943   in academia and industy. We will provide you with hands-on experience
944   with the Math Faculty's UNIX environment in this seminar.</p> 
945
946   <p>Topics that will be discussed include:</p>
947
948   <ul>
949   <li> Navigating the UNIX environment</li>
950   <li> Using common UNIX commands</li>
951   <li>Using the PICO text editor</li>
952   <li>Reading electronic mail and news with PINE</li>
953   </ul>
954
955   <p>If you do not have a Math computer account, don't panic; one will be lent
956   to you for the duration of this class.</p>  
957
958   </abstract>
959   </eventitem>
960
961   <eventitem date="2003-02-11" time="4:30 PM" room="MC2037"
962    title="Unix 102 Tutorial">
963   <short>Learn more Unix and be the envy of your friends!</short>
964   <abstract> 
965
966   <p>Abstract to come soon.</p>
967
968   </abstract>
969   </eventitem>
970
971   <eventitem date="2003-02-18" time="4:30 PM" room="MC2037"
972    title="Unix 103 Tutorial">
973   <short>Learn more Unix and be the envy of your friends!</short>
974   <abstract> 
975
976   <p>Abstract to come soon. </p>
977
978   </abstract>
979   </eventitem>
980
981   <eventitem date="2003-01-13" time="6:00 PM" room="MC3001"
982     title="W03 Elections">
983     <short>Come out and vote for the new exec!</short>
984    <abstract>
985
986 <p>This term's elections will take place on Monday, January 13 at 6:00 PM in the
987 MC "comfy lounge" (MC3001). Nominations are open from now on (Thursday,
988 January 2) until 4:30 PM of the day before elections (Sunday, January 12).
989 In order to nominate someone you can either e-mail me directly, by depositing
990 a form with the required information in the CSC mailbox in the Mathsoc office
991 or by writing the nomination and clearly marking it as such on the large
992 whiteboard in the CSC office. E-mail is probably the best choice.
993 Please include the name of the person to be nominated as well as the position
994 you wish to nominate them for.</p>
995
996 <p>Candidates must be full members of the club. This means they must have paid
997 their membership for the given term and (due to recent changes in the
998 constitution) must be full-time undergraduate math students.
999 The same requirements hold for those voting. Please bring your Watcard to
1000 the elections so that I can verify this. I will have a list of members with
1001 me also.</p>
1002
1003 <p>The positions open are:</p>
1004
1005 <p><b>President</b> -- appoints all commitees of the club, calls and presides at all
1006 meetings of the club and audits the club's financial records. Really, this
1007 is the person in charge.</p>
1008
1009 <p><b>Vice President</b> -- assumes President's duties in case he/she is absent,
1010 plans and coordinates events with the programmes committee and assumes any
1011 other duties delegated by the President.
1012 This is a really fun job if you enjoy coordinating events!</p>
1013
1014 <p><b>Secretary</b> -- keeps minutes of the meetings and cares for any correspondence.
1015 A fairly light job, good choice if you just want to see what being an exec
1016 is all about.</p>
1017
1018 <p><b>Treasurer</b> -- maintains all the finances of the club.
1019 If you like money and keeping records, this is the job for you!</p>
1020
1021 <p>Additionally a Systems Administrator will be picked by the new executive.</p>
1022
1023 <p>Last term was a great term for the CSC -- many events, some office renovations
1024 and a much improved image were all part of it. I hope to see the next term's
1025 exec continue this. If you're interested in seeing this happen, do consider
1026 going for a position, or helping out as office staff or on one of the
1027 committees.</p>
1028
1029 <p>Anyways, hopefully I'll see many of you at the elections.
1030 Remember: Monday, January 13, 6:00 PM, MC3001/Comfy Lounge.</p>
1031
1032 <p>If you have any further questions don't hesitate to contact the CRO,
1033       Stefanus Du Toit <a href="mailto:sjdutoit@uwaterloo.ca">by e-mail</a>.</p>
1034     </abstract>
1035   </eventitem>
1036
1037   <eventitem date="2003-01-23" time="6:30 PM" room="MC1085"
1038     title="Regular Expressions">
1039     <short>Find your perfect match</short>
1040     <abstract>
1041
1042     <p>Stephen Kleene developed regular expressions to describe what he
1043     called <q>the algebra of regular sets.</q>  Since he was a pioneering
1044     theorist in computer science, Kleene's regular expressions soon made
1045     it into searching algorithms and from there to everyday tools.</p>
1046
1047     <p>Regular expressions can be powerful tools to manipulate text.
1048     You will be introduced to them in this talk.  As well, we will go
1049     further than the rigid mathematical definition of regular
1050     expressions, and delve into POSIX regular expressions which are
1051     typically available in most Unix tools.</p>
1052
1053     </abstract>
1054   </eventitem>
1055
1056   <eventitem date="2003-01-30" time="6:30 PM" room="MC1085"
1057     title="sed &amp; awk">
1058     <short>Unix text editing</short>
1059     <abstract>
1060
1061     <p><i>sed</i> is the Unix stream editor.  A powerful way to
1062     automatically edit a large batch of text.  <i>awk</i> is a
1063     programming language that allows you to manipulate structured data
1064     into formatted reports.</p>
1065
1066     <p>Both of these tools come from early Unix, and both are still
1067     useful today.  Although modern programming languages such as Perl,
1068     Python, and Ruby have largely replaced the humble <i>sed</i> and
1069     <i>awk</i>, they still have their place in every Unix user's
1070     toolkit.</p>
1071
1072     </abstract>
1073   </eventitem>
1074
1075   <eventitem date="2003-02-06" time="6:30 PM" room="MC1085"
1076     title="LaTeX: A Document Processor">
1077     <short>Typesetting beautiful text</short>
1078     <abstract>
1079
1080     <p>Unix was one of the first electronic typesetting platforms.  The
1081     innovative AT&amp;T <i>troff</i> system allowed researches at Bell
1082     Labs to generate high quality camera-ready proofs for their papers.
1083     Later, Donald Knuth invented a typesetting system called
1084     T<small>E</small>X, which was far superior to other typesetting
1085     systems in the 1980s.  However, it was still a typesetting language,
1086     where one had to specify exactly how text was to be set.</p>
1087
1088     <p>L<sup><small>A</small></sup>T<small>E</small>X is a macro package
1089     for the T<small>E</small>X system that allows an author to describe
1090     his document's function, thereby typesetting the text in an
1091     attractive and correct way.  In addition, one can define semantic
1092     tags to a document, in order to describe the meaning of the
1093     document; rather than the layout.</p>
1094
1095     </abstract>
1096   </eventitem>
1097
1098   <eventitem date="2003-02-13" time="6:30 PM" room="MC1085"
1099     title="LaTeX: Reports">
1100     <short>Writing reports that look good.</short>
1101     <abstract>
1102
1103     <p>Work term reports, papers, and other technical documents can be
1104     typeset in L<sup><small>A</small></sup>T<small>E</small>X to great
1105     effect.  In this session, I will provide examples on how to typeset
1106     tables, figures, and references.  You will also learn how to make
1107     tables of contents, bibliographics, and how to create footnotes.</p>
1108
1109     <p> I will also examine various packages of 
1110     L<sup><small>A</small></sup>T<small>E</small>X that can help you 
1111     meet requirements set by users of inferior typesetting systems.  
1112     These include double-spacing, hyphenation and specific margin 
1113     sizes.</p>
1114
1115     </abstract>
1116   </eventitem>
1117
1118   <eventitem date="2003-02-20" time="6:30 PM" room="MC1085"
1119     title="LaTeX: Beautiful Mathematics">
1120     <short>LaTeX =&gt; fun</short>
1121     <abstract>
1122
1123     <p>It is widely acknowledged that the best system by which to
1124     typeset beautiful mathematics is through the T<small>E</small>
1125     typesetting system, written by Donald Knuth in the early 1980s.</p>
1126
1127     <p>In this talk, I will demonstrate
1128     L<sup><small>A</small></sup>T<small>E</small>X and how to typeset
1129     elegant mathematical expressions.</p>
1130
1131     </abstract>
1132   </eventitem>
1133
1134   <eventitem date="2003-02-27" time="6:00 PM" room="MC1085"
1135     title="The BSD License Family">
1136     <short>Free for all</short>
1137     <abstract>
1138
1139     <p>Before the GNU project ever existed, before the phrase
1140     "Free Software" was ever coined, students and researchers
1141     at the University of California, Berkeley were already
1142     practising it.  They had acquired the source cdoe to a
1143     little-known operating system developed at AT&amp;T
1144     Bell Laboratories, and were creating improvments at a
1145     ferocious rate.</p>
1146
1147     <p>These improvements were sent back to Bell Labs, and
1148     shared to other Universities.  Each of them were licensed
1149     under what is now known as the "Original BSD license".  Find
1150     out what this license means, its implications, and what are
1151     its decendents by attending this short talk.</p>
1152
1153     </abstract>
1154   </eventitem>
1155
1156   <eventitem date="2003-02-27" time="6:30 PM" room="MC1085"
1157     title="The GNU General Public License">
1158     <short>The teeth of Free Software</short>
1159     <abstract>
1160
1161     <div style="font-style: italic"><blockquote>
1162       The licenses for most software are designed to take away your
1163       freedom to share and change it. By contrast, the GNU General
1164       Public License is intended to guarantee your freedom to share and
1165       change free software---to make sure the software is free for all
1166       its users.
1167       <br />
1168       <div style="text-align:right">--- Excerpt from the GNU GPL</div>
1169     </blockquote></div>
1170     
1171     <p> The GNU General Public License is one of the most influencial
1172     software licenses in this day.  Written by Richard Stallman for the
1173     GNU Project, it is used by software developers around the world to
1174     protect their work.</p>
1175
1176     <p>Unfortunately, software developers do not read licenses
1177     thoroughly, nor well.  In this talk, we will read the entire GNU GPL
1178     and explain the implications of its passages.  Along the way, we
1179     will debunk some myths and clarify common misunderstandings.</p>
1180
1181     <p>After this session, you ought to understand what the GNU GPL
1182     means, how to use it, and when you cannot use it.  This session
1183     should also give you some insight into the social implications of
1184     this work.</p>
1185
1186     </abstract>
1187   </eventitem>
1188
1189   <eventitem date="2003-03-13" time="6:30 PM" room="MC1085"
1190     title="XML">
1191     <short>Give your documents more markup</short>
1192     <abstract>
1193
1194     <p>XML is the <q>eXtensible Markup Language,</q> a standard
1195     maintained by the World Wide Web Consortium.  A descendant of IBM's
1196     SGML.  It is a metalanguage which can be used to define markup
1197     languages for semantically describing a document.</p>
1198
1199     <p>This talk will describe how to generate correct XML documents,
1200     and auxillary technologies that work with XML.</p>
1201
1202     </abstract>
1203   </eventitem>
1204
1205   <eventitem date="2003-03-20" time="6:30 PM" room="MC1085"
1206     title="XSLT">
1207     <short>Transforming your documents</short>
1208     <abstract>
1209
1210     <p>XSLT is the <q>eXtended Stylesheet Language Transformations,</q>
1211     a language for transforming XML documents into other XML
1212     documents.</p>
1213
1214     <p>XSLT is used to manipulate XML documents into other forms: a sort
1215     of glue between data formats.  It can turn an XML document into an
1216     XHTML document, or even an HTML document.  With a little bit of
1217     hackery, it can even be convinced to spit out non-XML conforming
1218     documents.</p>
1219
1220     </abstract>
1221   </eventitem>
1222
1223   <eventitem date="2003-03-24" time="8:00 PM" 
1224     room="Humanities Theatre, Hagey Hall"
1225     title="Judy, or What Is It Like To Be A Robot?">
1226     <short>Held in co-operation with the UW Cognitive Science Club</short>
1227     <abstract>
1228
1229     <p>A lot of claims have been made lately about the intelligence of 
1230     computers.  Some researchers say that computers will eventually attain 
1231     super-human intelligence.  Others call thse claims... um, poppycock.  
1232     Oddly enough, in the search for the truth of the matter, both camps 
1233     have overlooked an obvious strategy: interviewing a computer and asking 
1234     her opinion.</p>
1235
1236     <p>"Judy is as much fun as a barrel of wind-up cymbal-monkeys, and 
1237     lots more entertaining." --- Bill Rodriguez, <i>Providence Phoenix</i></p>
1238
1239     <p>"Tom Sgouros's witty play, co-starring the charming robot Judy, is an
1240     imagination stretcher that delights while it exercises your mind.  If you
1241     think you can't imagine a conscious robot, you're wrong---you can,
1242     especially once you've met Judy." --- Daniel C. Dennett,
1243     author of <i>Consciousness Explained</i>, <i>Brainchildren</i>,
1244     &amp;c.</p>
1245
1246     <p>"...an engrossing evening...  Real questions about 
1247     consciousness, freedom to act, the relationship between the creator 
1248     and the created are woven into a bravura performance." --- Will 
1249     Stackman, <i>Aislesay.com</i></p>
1250
1251     <p>Sponsored by the Mathematics Society, the Federation of Students, the
1252     Arts Student Union, the Graduate Student Association, and the Department of
1253     Philosophy. Tickets available at the Humanities box office (888-4908) and
1254     the offices of the Psychology Society and the Computer Science Club for
1255     $5.50.  For
1256     more information: <a
1257     href="http://www.csclub.uwaterloo.ca/cogsci/">http://www.csclub.uwaterloo.ca/cogsci</a>.</p>
1258
1259     </abstract>
1260   </eventitem>
1261
1262   <eventitem date="2003-03-25" time="4:30 PM" room="MC2065"
1263     title="Stream Processing">
1264     <short>A talk by Assistant Professor Michael McCool</short>
1265     <abstract>
1266
1267     <p>Stream processing is an enhanced version of SIMD processing that
1268     permits efficient execution of conditionals and iteration.  Stream
1269     processors have many similarities to GPUs, and a hardware prototype,
1270     the Imagine processor, has been used to implement both OpenGL and
1271     Renderman.</p>
1272
1273     <p>It is possible that GPUs will acquire certain properties
1274     of stream processors in the future, which should make them easier
1275     to use and more efficient for general-purpose computation that includes
1276     data-dependent iteration and conditionals.</p>
1277
1278     </abstract>
1279   </eventitem>
1280
1281   <eventitem date="2003-03-26" time="6:00 PM" room="MC2065"
1282     title="Abusing the C++ Compiler">
1283     <short>Abusing template metaprogramming in C++</short>
1284     <abstract>
1285
1286     <p>Templates are a useful feature in C++ when it comes to writing
1287     type-independent data structures and algorithms.  But that's not all
1288     they can be used for.  Essentially, it is possible to write certain
1289     programs in C++ that execute completely at compile-time rather
1290     than run-time.  Combined with some optimisations this is an interesting
1291     twist on regular C++ programming.</p>
1292
1293     <p>This talk will give a short overview of the features of templates
1294     and then go on to describe how to "abuse" templates to perform complex
1295     computations at compile time. The speaker will present three programs of
1296     increasing complexity which execute at compile time. First a factorial
1297     listing program, then a prime listing program will be presented. Finally
1298     the talk will conclude with the presentation of a <i>Mandelbrot
1299     generator running at compile time.</i></p>
1300
1301     <p>Some basic knowledge of C++ will be assumed.</p>
1302
1303     </abstract>
1304   </eventitem>
1305
1306   <eventitem date="2003-03-27" time="6:30 PM" room="MC1085"
1307     title="SSH and Networks">
1308     <short>Once more into the breach</short>
1309     <abstract>
1310
1311     <p>The Secure Shell (SSH) has now replaced traditional remote login
1312     tools such as <i>rsh</i>, <i>rlogin</i>, <i>rexec</i> and
1313     <i>telnet</i>.  It is used to provide secure, authenticated,
1314     encrypted communications between remote systems.  However, the SSH
1315     protocol provides for much more than this.</p>
1316
1317     <p>In this talk, we will discuss using SSH to its full extent.  Topics
1318     to be covered include:</p>
1319     <ul>
1320       <li>Remote logins</li>
1321       <li>Remote execution</li>
1322       <li>Password-free authentication</li>
1323       <li>X11 forwarding</li>
1324       <li>TCP forwarding</li>
1325       <li>SOCKS tunnelling</li>
1326     </ul>
1327
1328     </abstract>
1329   </eventitem>
1330
1331   <!-- Fall 1994 -->
1332         <eventitem
1333          date="1994-09-13" time="9:00 PM"
1334          room="Princess Cinema"
1335          title="Movie Outing: Brainstorm">
1336                 <short>
1337                         No description available.
1338                 </short>
1339                 <abstract>
1340                         <p>
1341                         The first of this term's CSC social events, we will be going to see
1342                         the movie ``Brainstorm'' at the Princess Cinema. This outing is
1343                         intended primarily for the new first-year students.
1344                         </p>
1345                         <p>
1346                         The Princess Cinema is Waterloo's repertoire theatre. This month
1347                         and next, they are featuring a ``Cyber Film Festival''. Upcoming
1348                         films include:
1349                         </p>
1350                         <ul>
1351                                 <li>Brazil</li>
1352                                 <li>Bladerunner (director's cut)</li>
1353                                 <li>2001: A Space Odyssey</li>
1354                                 <li>Naked Lunch</li>
1355                         </ul>
1356                         <p>
1357                         Admission is $4.25 for a Princess member, $7.50 for a non-member.
1358                         Membership to the Princess is $7.00 per year. 
1359                         </p>
1360                 </abstract>
1361         </eventitem>
1362         <eventitem
1363          date="1994-09-16" time="4:30 PM"
1364          room="MC 4040"
1365          title="CSC Elections">
1366                 <short>No description available</short>
1367                 <abstract>No abstract available</abstract>
1368         </eventitem>
1369         <eventitem
1370          date="1994-09-19" time="4:30 PM"
1371          room="MC 3022"
1372          title="UNIX I Tutorial">
1373                 <short>No description available</short>
1374                 <abstract>No abstract available</abstract>
1375         </eventitem>
1376         <eventitem
1377          date="1994-09-21" time="6:30 PM"
1378          room="DC 1302"
1379          title="SIGGRAPH Video Night">
1380                 <short>No description available</short>
1381                 <abstract>No abstract available</abstract>
1382         </eventitem>
1383         <eventitem
1384          date="1994-09-22" time="4:30 PM"
1385          room="MC 3022"
1386          title="UNIX I Tutorial">
1387                 <short>No description available</short>
1388                 <abstract>No abstract available</abstract>
1389         </eventitem>
1390         <eventitem
1391          date="1994-09-26" time="4:30 PM"
1392          room="MC 3022"
1393          title="UNIX II Tutorial">
1394                 <short>No description available</short>
1395                 <abstract>No abstract available</abstract>
1396         </eventitem>
1397         <eventitem
1398          date="1994-10-13" time="5:00 PM"
1399          room="DC 1302"
1400          title="Prograph: Picture the Future">
1401                 <short>No description available</short>
1402                 <abstract>
1403                         <p>
1404                         What is the next step in the evolution of computer languages?
1405                         Intelligent agents? Distributed objects? or visual languages?
1406                         </p>
1407                         <p>
1408                         Visual languages overcome many of the drawbacks and limitations
1409                         of the textual languages that software development is based on
1410                         today. Do you think about programming in a linear fashion? Or do
1411                         you draw a mental picture of your algorithm and then linearize it
1412                         for the benefit of your compiler? Wouldn't it be nice if you could
1413                         code the same way you think?
1414                         </p>
1415                         <p>
1416                         Visual C++ and Visual BASIC aren't visual languages, but Prograph
1417                         is. Prograph is a commercially available, visual, object-oriented,
1418                         data-flow language. It is well suited to graphical user interface
1419                         development, but is as powerful for general-purpose programming as
1420                         any textual language.
1421                         </p>
1422                         <p>
1423                         The talk will comprise a discussion of the problems of textual
1424                         languages that visual languages solve, a live demonstration of
1425                         Prograph, and some of my observations of the applications of
1426                         Prograph to software development.
1427                         </p>
1428                 </abstract>
1429         </eventitem>
1430         <eventitem
1431          date="1994-10-15" time="10:00 AM"
1432          room="MC 3022"
1433          title="ACM-Style Programming Contest">
1434                 <short>No description available</short>
1435                 <abstract>
1436                         <h3>Big Money and Prizes!</h3>
1437                         <p>
1438                         So you think you're a pretty good programmer? Pit your skills
1439                         against others on campus in this triannual event! Contestants will
1440                         have three hours to solve five programming problems in either C or
1441                         Pascal.
1442                         </p>
1443                         <p>
1444                         Last fall's winners went on to the International Finals and came
1445                         first overall! You could be there, too!
1446                         </p>
1447                 </abstract>
1448         </eventitem>
1449         <eventitem
1450          date="1994-10-20" time="4:30 PM"
1451          room="MC 3009"
1452          title="Exploring the Internet">
1453                 <short>No description available</short>
1454                 <abstract>
1455                         <h3>Need something to do between assignments/beers?</h3>
1456                         <p>
1457                          Did you know that your undergrad account at Waterloo gives you
1458                          access tothe world's largest computer network? With thousands
1459                          of discussion groups, gigabytes of files to download, multimedia
1460                          information browsers, even on-line entertainment?
1461                         </p>
1462                         <p>
1463                         The resources available on the Internet are vast and wondrous, but
1464                         the tools for navigating it are sometimes confusing and arcane. In
1465                         this hands-on tutorial you will get the chance to get your feet wet
1466                         with the world's most mind-bogglingly big computer network, the
1467                         protocols and programs used, and how to use them responsibly and
1468                         effectively. 
1469                         </p>
1470                 </abstract>
1471         </eventitem>
1472         <eventitem
1473          date="1994-11-02" time="4:30 PM"
1474          room="MC 2038"
1475          title="Game Theory">
1476                 <short>No description available</short>
1477                 <abstract>
1478                         <h3>From the Minimax Theorem, through Alpha-Beta, and beyond...</h3>
1479                         <p>
1480                          This will be a descussion of the pitfalls of using mathematics and
1481                          algorithms to play classical board games. Thorough descriptions
1482                          shall be presented of the simple techniques used as the building
1483                          blocks that make all modern computer game players. I will use
1484                          tic-tac-toe as a control for my arguements. Other games such as
1485                          Chess, Othello and Go shall be the be a greater measure of progress;
1486                          and more importantly the targets of our dreams.
1487                          </p>
1488                         <p>
1489                          To enhance the discussion of the future, Barney Pell's Metagamer
1490                          shall be introduced. His work in define classes of games is
1491                          important in identifying the features necessary for analysis. 
1492                          </p>
1493                 </abstract>
1494         </eventitem>
1495
1496   <!-- Fall 1999 -->
1497
1498   <eventitem date="1999-10-18" time="2:30 PM" room="DC1304"
1499   title="Living Laboratories: The Future Computing Environments at
1500   Georgia Tech">
1501     <short>By Blair MacIntyre and Elizabeth Mynatt</short>
1502     <abstract>
1503       <p>by   Blair MacIntyre and Elizabeth Mynatt</p>
1504       <p>The Future Computing Environments (FCE) Group at Georgia Tech
1505         is a collection of faculty and students that share a desire to
1506         understand the partnership between humans and technology that
1507         arises as computation and sensing become ubiquitous.  With
1508         expertise covering the breadth of Computer Science, but
1509         focusing on HCI, Computational Perception, and Machine
1510         Learning, the individual research agendas of the FCE faculty
1511         are grounded in a number of shared "living laboratories" where
1512         their research is applied to everyday life in the classroom
1513         (Classroom 2000), the home (the Aware Home), the office
1514         (Augmented Offices), and on one's person.  Professors
1515         MacIntyre and Mynatt will discuss a variety of these projects,
1516         with an emphasis on the HCI and Computer Science aspects of
1517         the FCE work.
1518       </p>
1519       <p>
1520         In addition to their affiliation with the FCE group,
1521         Professors Mynatt and MacIntyre are both members of the
1522         Graphics, Visualization and Usability Center (GVU) at Georgia
1523         Tech.  This interdisciplinary center brings together research
1524         in computer science, psychology, industrial engineering,
1525         architecture and media design by examining the role of
1526         computation in our everyday lives.  During the talk, they will
1527         touch on some of the research and educational opportunities
1528         available at both GVU and the College of Computing.
1529       </p>
1530     </abstract>
1531   </eventitem>
1532
1533   <eventitem date="1999-10-19" time="4:30 PM" room="DC1304"
1534   title="GDB, Purify Tutorial">
1535     <short>No description available.</short>
1536     <abstract>
1537       <p>
1538        Debugging can be the most difficult and time consuming part of
1539        any program's life-cycle. Far from an exact science, it's more
1540        of an art ... and close to some kind of dark magic. Cryptic
1541        error messages, lousy error checking, and icky things like
1542        implicit casts can make it nearly impossible toknow what's
1543        going on inside your program.
1544       </p>
1545       <p>
1546          Several tools are available to help automate your
1547          debuggin. GDB and Purify are among the most powerful
1548          debugging tools available in a UNIX environment. GDB is an
1549          interactive debugger, allowing you to `step' through
1550          aprogram, examine function calls, variable contents, stack
1551          traces and let you look at the state of a program after it
1552          crashes. Purify is a commercial program designed to help find
1553          and remove memory leaks from programs written inlanguages
1554          without automatic garbage collection.
1555       </p>
1556       <p>
1557         This talk will cover how to compile your C and C++ programs
1558         for use with GDB and Purify, as well as how to use the
1559         available X interfaces. If a purify license is available on
1560         undergrad at the time of the talk, we will cover how to use it
1561         during runtime.
1562       </p>
1563     </abstract>
1564   </eventitem>
1565
1566   <eventitem date="1999-12-01" time="4:30 PM" room="MC2066"
1567     title="Homebrew Processors and Integrated Systems in FPGAs">
1568     <short>By Jan Gray</short>
1569     <abstract>
1570       <p>by Jan Gray</p>
1571       
1572       <p> With the advent of large inexpensive field-programmable gate
1573       arrays and tools it is now practical for anyone to design and
1574       build custom processors and systems-on-a-chip. Jan will discuss
1575       designing with FPGAs, and present the design and implementation
1576       of xr16, yet another FPGA-based RISC computer system with
1577       integrated peripherals.</p>
1578
1579       <p> Jan is a past CSC pres., B.Math. CS/EEE '87, and wrote
1580       compilers, tools, and middleware at Microsoft from 1987-1998. He
1581       built the first 32-bit FPGA CPU and system-on-a-chip in
1582       1995. </p>
1583     </abstract>
1584   </eventitem>
1585
1586   <eventitem date="1999-12-01" time="7:00 PM" room="Golf's Steakhouse"
1587     title="Ctrl-D">
1588     <short>End-of-term dinner</short> 
1589     <abstract>
1590       No abstract available.
1591     </abstract>
1592   </eventitem>
1593
1594   <eventitem date="1999-12-02" time="1:30 PM" room="DC1302"
1595     title="Calculational Mathematics">
1596     <short>By Edgar Dijkstra</short>
1597     <abstract>
1598       <p> By Edgar Dijkstra</p>
1599
1600       <p> This  talk will use  partial orders, lattice theory,  and, if
1601       time permits,  the Galois  connection as carriers  to illustrate
1602       the use of  calculi in mathematics. We hope  to show the brevity
1603       of  many calculations  (in order  tofight the  superstition that
1604       formal  proofs  are  necessarily  unpractically long),  and  the
1605       strong   heuristic  guidance   that  is   available   for  their
1606       design. </p>
1607
1608       <p> Dijkstra is known for early graph-theoretical algorithms,
1609       the first implementation of ALGOL 60, the first operating system
1610       composed of explicitly synchronized processes, the invention of
1611       guarded commands and of predicate transformers as a means for
1612       defining semantics, and programming methodology in the broadest
1613       sense of the word. </p>
1614
1615       <p> His current research interests focus on the formal
1616       derivation of proofs and programs, and the streamlining of the
1617       mathematical argument in general.</p>
1618      
1619       <p> Dijkstra held the Schlumberger Centennial Chair in Computer
1620       Sciences at The University of Texas at Austin until retiring in
1621       October. </p>
1622
1623     </abstract>
1624   </eventitem>
1625
1626   <eventitem date="1999-12-03" time="10:00 AM" room="Siegfried Hall,
1627   St Jerome's" title="Proofs and Programs">
1628     <short>By Edsger Dijkstra</short>
1629     <abstract>
1630       <p> This talk will show the use of programs for the proving of
1631       theorems. Its purpose is to show how our experience gained in
1632       the derivations of programs might be transferred to the
1633       derivation of proofs in general. The examples will go beyond the
1634       (traditional) existence theorems. </p>
1635
1636       <p> Dijkstra is known for early graph-theoretical algorithms,
1637       the first implementation of ALGOL 60, the first operating system
1638       composed of explicitly synchronized processes, the invention of
1639       guarded commands and of predicate transformers as a means for
1640       defining semantics, and programming methodology in the broadest
1641       sense of the word. </p>
1642
1643       <p> His current research interests focus on the formal
1644       derivation of proofs and programs, and the streamlining of the
1645       mathematical argument in general.</p>
1646      
1647       <p> Dijkstra held the Schlumberger Centennial Chair in Computer
1648       Sciences at The University of Texas at Austin until retiring in
1649       October. </p>
1650
1651     </abstract>
1652   </eventitem>
1653
1654   <eventitem date="1999-12-03" time="3:00 PM" room="DC1351"
1655     title="Open Q&amp;A session">
1656     <short>By Edsger Dijkstra</short>
1657     <abstract>No description available.</abstract>
1658   </eventitem>
1659
1660   <!-- Winter 2000 -->
1661
1662   <eventitem date="2000-03-24" time="4:30 PM" room="DC1304"
1663   title="Enterprise Java APIs and Implementing a Web Portal">
1664     <short>No description available.</short>
1665     <abstract>
1666       <h3>by Floyd Marinescu
1667       </h3>
1668       
1669       <p>
1670         The first talk will be an introduction to the Enterprise Java
1671         API's: Servlets, JSP, EJB, and how to use them to build
1672         eCommerce sites.
1673       </p>
1674
1675       <p>
1676         The second talk will be about how these technologies were used
1677         to implement a real world portal.  The talk will include an
1678         overview of the design patterns used and will feature
1679         architectural information about the yet to be release portal
1680         (which I am one of the developers) called theserverside.com.
1681       </p>
1682     </abstract>
1683   </eventitem>
1684
1685   <eventitem date="2000-03-30" time="4:30 PM" room="DC1304"
1686     title="Enterprise Java APIs and Implementing a Web Portal (1)">
1687     <short>No description available.</short>
1688     <abstract>
1689       <p>Real World J2EE - Design Patterns and architecture behind the
1690         yet to be released J2EE portal: theserverside.com</p>
1691
1692       <p>This talk will feature an exclusive look at the architecture
1693         behind the new J2EE portal: theserverside.com.  Join Floyd
1694         Marinescu in a walk-through ofthe back-end of the portal,
1695         while learning about J2EE and its real world patterns,
1696         applications, problems and benefits.</p>
1697     </abstract>
1698   </eventitem>
1699
1700   <!-- Spring 2000 -->
1701
1702   <eventitem date="2000-07-20" time="7:00 PM" room="Ali Babas Steak
1703   House, 130 King Street S, Waterloo" title="Ctrl-D">
1704     <short>End-of-term dinner</short>
1705     <abstract>No abstract available.</abstract>
1706   </eventitem>
1707
1708   <!-- Fall 2000 -->
1709
1710   <eventitem date="2000-09-14" time="6:00 PM" room="DC1302"
1711     title="CSC Elections">
1712     <short>Fall 2000 Elections for the CSC.</short>
1713     <abstract>
1714       <p>
1715         Would you like to get involved in the CSC? Would you like to have a
1716         say in what the CSC does this term?  Come out to the CSC Elections!
1717         In addition to electing the executive for the Fall term, we will be
1718         appointing office staff and other positions.  Look for details in
1719         uw.csc.
1720       </p>
1721
1722       <p>Nominations for all positions are being taken in the CSC office, MC
1723         3036.</p>
1724     </abstract>
1725   </eventitem>
1726
1727   <eventitem date="2000-09-14" time="7:00 PM" room="DC1302"
1728     title="SIGGraph Video Night">
1729     <short> SIGGraph Video Night Featuring some truly awesome computer
1730     animations from Siggraph '99. </short>
1731     <abstract>
1732       <p> Interested in Computer Graphics?
1733       </p>
1734       
1735       <p> Enjoy watching state-of-the-art Animation?
1736       </p>
1737       
1738       <p> Looking for a cheap place to take a date?
1739       </p>
1740       
1741       <p> SIGGraph Video Night -
1742         Featuring some truly awesome computer animations from Siggraph '99.
1743       </p>
1744
1745       <p>Come out for the Computer Science Club general elections at 6:00
1746         pm, right before SIGGraph!</p>
1747       </abstract>
1748   </eventitem>
1749
1750  <eventitem date="2000-09-25" time="2:30 PM" room="DC1302"
1751     title="Realising the Next Generation Internet">
1752     <short>By Frank Clegg of Microsoft Canada</short>
1753     <abstract>
1754 <h3>Vitals</h3>
1755 <dl>
1756 <dt>By</dt>
1757 <dd>Frank Clegg</dd>
1758 <dd>President, Microsoft Canada</dd>
1759 <dt>Date</dt>
1760
1761 <dd>Monday, September 25, 2000</dd>
1762 <dt>Time</dt>
1763 <dd>14:30 - 16:00</dd>
1764 <dt>Place</dt>
1765 <dd>DC 1302</dd>
1766 <dd>(Davis Centre, Room 1302, University of Waterloo)</dd>
1767
1768 <dt>Cost</dt>
1769 <dd>$0.00</dd>
1770 <dt>Pre-registration</dt>
1771 <dd>Recommended</dd>
1772 <dd><a HREF="http://infranet.uwaterloo.ca:81/infranet/semform.htm">http://infranet.uwaterloo.ca:81/infranet/semform.htm</a></dd>
1773 <dd>(519) 888-4004</dd>
1774
1775 </dl>
1776
1777 <h3>Abstract</h3>
1778 <p>The Internet and the Web have revolutionized our communications, our access
1779 to information and our business methods. However, there is still much room 
1780 for improvement. Frank Clegg will discuss Microsoft's vision for what is 
1781 beyond browsing and the dotcom. Microsoft .NET (pronounced "dot-net") is a 
1782 new platform, user experience and set of advanced software services planned 
1783 to make all devices work together and connect seamlessly. With this next 
1784 generation of software, Microsoft's goal is to make Internet-based 
1785 computing and communications easier to use, more personalized, and more 
1786 productive for businesses and consumers. In his new position of president 
1787 of Microsoft Canada Co., Frank Clegg will be responsible for leading the 
1788 organization toward the delivery of Microsoft .NET. He will speak about 
1789 this new platform and the next generation Internet, how software developers 
1790 and businesses will be able to take advantage of it, and what the .NET 
1791 experience will look like for consumers and business users.</p>
1792
1793 <h3>The Speaker</h3>
1794 <p>Frank Clegg was appointed president of Microsoft Canada Co. this month. 
1795 Prior to his new position, Mr. Clegg was vice-president, Central Region, 
1796 Microsoft Corp. from 1996 to 2000. In this capacity, he was responsible for 
1797 sales, support and marketing activities in 15 U.S. states. Mr. Clegg joined 
1798 Microsoft Corp. in 1991 and headed the Canadian subsidiary until 1996. 
1799 During that time, Mr. Clegg was instrumental in introducing several key 
1800 initiatives to improve company efficiency, growth and market share. Mr. 
1801 Clegg graduated from the University of Waterloo in 1977 with a B. Math.</p>
1802
1803 <h3>For More Information</h3>
1804 <address>
1805 Shirley Fenton<br />
1806 The infraNET Project<br />
1807 University of Waterloo<br />
1808 519-888-4567 ext. 5611<br />
1809 <a HREF="http://infranet.uwaterloo.ca/">http://infranet.uwaterloo.ca/</a>
1810 </address>
1811       </abstract>
1812   </eventitem>
1813
1814
1815  <!-- Winter 2001 -->
1816
1817  <eventitem date="2001-01-15" time="4:30 PM" room="MC3036"
1818     title="Executive elections">
1819   <short>Winter 2001 CSC Elections.</short>
1820   <abstract>
1821       <p>Would you like to get involved in the CSC? Would you like to
1822         have a say in what the CSC does this term? Come out to the CSC
1823         Elections! In addition to electing the executive for the
1824         Winter term, we will be appointing office staff and other
1825         positions. Look for details in uw.csc.
1826       </p>
1827       <p>
1828         Nominations for all positions are being taken in the CSC
1829         office, MC 3036.
1830       </p>
1831     </abstract>
1832  </eventitem>
1833   <eventitem date="2001-01-22" time="3:30 PM" room="MC3036"
1834     title="Meeting #2">
1835     <short>Second CSC meeting for Winter 2001.</short>
1836     <abstract>
1837       <h3>Proposed agenda</h3>
1838       <dl>
1839         <dt>Book purchases</dt>
1840         <dd>
1841           <p>They haven't been done in 2 terms.
1842             We have an old list of books to buy.
1843             Any suggestions from uw.csc are welcome.</p>
1844         </dd>
1845         <dt>CD Burner</dt>
1846         
1847         <dd>
1848           <p>For doing linux burns. It was allocated money on the budget
1849             request - about $300. We should be able to get a decent 12x
1850             burner with that (8x rewrite).</p>
1851           <p>The obvious things to sell are Linux Distros and BSD variants.
1852             Are there any other software that we can legally burn and sell
1853             to students?</p>
1854         </dd>
1855         <dt>Unix talks</dt>
1856         <dd>
1857           <p>Just a talk of the topics to be covered, when, where, whatnot.
1858             Mike was right on this one, this should have been done earlier
1859      in the term.  Oh well, maybe we can fix this for next fall term.</p>
1860           
1861         </dd>
1862         <dt>Game Contest</dt>
1863         <dd>
1864           <p>We already put a bit of work into planning the Othello contest
1865             before I read Mike's post. I still think it's viable. I've got
1866             at least 2 people interested in writing entries for it. This
1867             will be talked about more on monday. Hopefully, Rory and I will
1868             be able to present a basic outline of how the contest is going
1869             to be run at that time.</p>
1870         </dd>
1871         <dt>Peri's closet cleaning</dt>
1872         <dd>
1873           
1874           <p>Current sysadmin (jmbeverl) and I (kvijayan) and
1875             President (geduggan) had a nice conversation about this 2
1876             days ago, having to do with completely erasing all of
1877             peri, installing a clean stable potato debian on it, and
1878             priming it for being a gradual replacement to calum. We'll
1879             probably discuss how much we want to get done on this
1880             front on Monday.</p>
1881         </dd>
1882       </dl>
1883       
1884       <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>
1885     </abstract>
1886   </eventitem>
1887
1888   <eventitem date="2001-01-27" time="10:30 AM" room="MC3006"
1889     title="ACM-Style programming contest">
1890     <short>Practice for the ACM international programming
1891     contest</short>
1892     <abstract>
1893 <p>Our ACM-Style practice  contests involve answering five questions in three
1894 hours.   Solutions are written  in Pascal, C  or C++.   Seven years in  a row,
1895 Waterloo's teams  have been in  the top ten  at the world  finals.
1896 For more information, see
1897 <a HREF="http://plg.uwaterloo.ca/~acm00/">the contest web page</a>.</p>
1898
1899 <h3>Easy Question:</h3>
1900 <p>A palindrome is a sequence of letters that reads the same backwards and
1901 forwards, such as ``Madam, I'm Adam'' (note that case doesn't matter and
1902 only letters are important). Your task is to find the longest palindrome in
1903 a line of text (if there is a tie, print the leftmost one).</p>
1904 <pre>
1905 Input:                              Output:
1906
1907 asfgjh12dsfgg kj0ab12321BA wdDwkj   abBA
1908 abcbabCdcbaqwerewq                  abCdcba
1909 </pre>
1910
1911 <h3>Hard Question:</h3>
1912 <p>An anagram is a word formed by reordering the letters of another word.
1913 Find all sets of anagrams that exist within a large dictionary.  The
1914 input will be a sorted list of words (up to 4000 words), one per line.
1915 Output each set of anagrams on a separate line.  Each set should be
1916 in alphabetical order, and all lines of sets should be in alphabetical
1917 order.  A word with no anagrams is a set of anagrams itself, and should
1918 be displayed with no modifications.</p>
1919
1920 <pre>
1921 Input:      Output:
1922
1923 post        post pots stop
1924 pots        start
1925 start
1926 stop
1927 </pre>
1928     </abstract>
1929   </eventitem>
1930
1931   <eventitem date="2001-01-29" time="02:39 PM" room="MC3036"
1932     title="Meeting #3">
1933     <short>No description available.</short>
1934     <abstract>No abstract available.</abstract>
1935   </eventitem>
1936
1937   <eventitem date="2001-02-05" time="03:30 PM" room="MC3036"
1938     title="Meeting #4">
1939     <short>No description available.</short>
1940     <abstract>No abstract available.</abstract>
1941   </eventitem>
1942
1943   <eventitem date="2001-02-12" time="03:30 PM" room="MC3036"
1944     title="Meeting #5">
1945     <short>No description available.</short>
1946     <abstract>No abstract available.</abstract>
1947   </eventitem>
1948
1949   <!-- Spring 2001 -->
1950
1951   <eventitem date="2001-06-02" time="10:30 AM" room="MC3006"
1952     title="ACM-Style programming contest">
1953     <short>Practice for the ACM international programming
1954     contest</short>
1955     <abstract>
1956 <p>Our ACM-Style practice  contests involve answering five questions in three
1957 hours.   Solutions are written  in Pascal, C  or C++.   Seven years in  a row,
1958 Waterloo's teams  have been in  the top ten  at the world  finals.
1959 For more information, see
1960 <a HREF="http://plg.uwaterloo.ca/~acm00/">the contest web page</a>.</p>
1961
1962 <h3>Easy Question:</h3>
1963 <p>A palindrome is a sequence of letters that reads the same backwards and
1964 forwards, such as ``Madam, I'm Adam'' (note that case doesn't matter and
1965 only letters are important). Your task is to find the longest palindrome in
1966 a line of text (if there is a tie, print the leftmost one).</p>
1967 <pre>
1968 Input:                              Output:
1969
1970 asfgjh12dsfgg kj0ab12321BA wdDwkj   abBA
1971 abcbabCdcbaqwerewq                  abCdcba
1972 </pre>
1973
1974 <h3>Hard Question:</h3>
1975 <p>An anagram is a word formed by reordering the letters of another word.
1976 Find all sets of anagrams that exist within a large dictionary.  The
1977 input will be a sorted list of words (up to 4000 words), one per line.
1978 Output each set of anagrams on a separate line.  Each set should be
1979 in alphabetical order, and all lines of sets should be in alphabetical
1980 order.  A word with no anagrams is a set of anagrams itself, and should
1981 be displayed with no modifications.</p>
1982
1983 <pre>
1984 Input:      Output:
1985
1986 post        post pots stop
1987 pots        start
1988 start
1989 stop
1990 </pre>
1991     </abstract>
1992   </eventitem>
1993
1994
1995  <!-- Winter 2002 -->
1996
1997  <eventitem date="2002-01-26" time="2:00 PM"
1998   room="Comfy Lounge MC3001" 
1999   title="An Introduction to GNU Hurd">
2000   <short>Bored of GNU/Linux? Try this experimental operating
2001   system!</short>
2002   <abstract>
2003 <p>GNU Hurd is an operating system kernel based on the microkernel
2004 architecture design. It was the original GNU kernel, predating Linux,
2005 and is still being actively developed by many volunteers.</p>
2006 <p>The Toronto-area Hurd Users Group, in co-operation with the Computer
2007 Science Club, is hosting an afternoon to show the Hurd to anyone
2008 interested. Jeff Bailey, a Hurd developer, will give a presentation on
2009 the Hurd, followed by a GnuPG/PGP keysigning party. To finish it off,
2010 James Morrison, also a Hurd developer, will be hosting a Debian
2011 GNU/Hurd installation session.</p>
2012 <p>All interested are invited to attend. Bring your GnuPG/PGP fingerprint
2013 and mail your key to sjdutoit@uwaterloo.ca with the subject
2014 ``keysigning'' (see separate announcement).</p>
2015 <p>Questions? Suggestions? Contact <a
2016 href="ja2morri@uwaterloo.ca">James Morrison</a>.</p>
2017   </abstract>
2018  </eventitem>
2019  <eventitem date="2002-01-26" time="2:30 PM"
2020   room="Comfy Lounge MC3001" 
2021   title="GnuPG/PGP Keysigning Party">
2022   <short>Get more signatures on your key!</short>
2023   <abstract>
2024   <p>
2025    GnuPG and PGP provide public-key based encryption for e-mail and
2026    other electronic communication. In addition to preventing others
2027    from reading your private e-mail, this allows you to verify that an
2028    e-mail or file was indeed written by its perceived author.
2029   </p>
2030   <p>
2031    In order to make sure a GnuPG/PGP key belongs to the respective
2032    person, the key must be signed by someone who has checked the
2033    user's key fingerprint and verified the user's identification.
2034   </p>
2035   <p>
2036    A keysigning party is an ideal occasion to have your key signed by
2037    many people, thus strengthening the authority of your key. Everyone
2038    showing up exchanges key signatures after verifying ID and
2039    fingerprints. The Computer Science Club will be hosting such a
2040    keysigning party together with the Hurd presentation by THUG (see
2041    separate announcement). See
2042    <a href="http://www.student.math.uwaterloo.ca/~sjdutoit/"> the
2043    keysigning party homepage</a> for more information.
2044   </p>
2045   <p>
2046    Before attending it is important that you mail your key to
2047    sjdutoit@uwaterloo.ca with the subject ``keysigning.'' Also make
2048    sure to bring photo ID and a copy of your GnuPG/PGP fingerprint on
2049    a sheet of paper to the event.
2050   </p>
2051   </abstract>
2052  </eventitem>
2053  <eventitem date="2002-01-31" time="6:00 PM" room="MC2037"
2054   title="UNIX 101: First Steps With UNIX">
2055   <abstract>
2056     This is the first in a series of seminars that cover the use of
2057     the UNIX Operating System. UNIX is used in a variety of
2058     applications, both in academia and industy. We will be covering
2059     the basics of the UNIX environment, as well as the use of PINE, an
2060     electronic mail and news reader.
2061   </abstract>
2062  </eventitem>
2063  <eventitem date="2002-02-13" time="4:00 PM" room="MC4060"
2064   title="DVD-Video Under Linux">
2065   <short>Billy Biggs will be holding a talk on DVD technology
2066   (in particular, CSS and playback issues) under Linux, giving some
2067   technical details as well as an overview of the current status of
2068   Free Software efforts. All are welcome.</short>
2069   <abstract>
2070    <p>DVD copy protection: Content Scrambling System (CSS)</p>
2071    <ul>
2072     <li>A technical introduction to CSS and an overview of the ongoing
2073     legal battle to allow distribution of non-commercial DVD
2074     players</li>
2075     <li>The current Linux software efforts and open issues</li>
2076     <li>How applications and Linux distributions are handling the
2077     legal issues involved</li>
2078    </ul>
2079    <p>DVD-Video specifics: Menus and navigation</p>
2080    <ul>
2081     <li>An overview of the DVD-Video standard</li>
2082     <li>Reverse engineering efforts and their implementation status</li>
2083     <li>Progress of integration into Linux media players</li>
2084    </ul>
2085   </abstract>
2086  </eventitem>
2087  <eventitem date="2002-02-07" time="6:00 PM" room="MC2037"
2088   title="Unix 102: Fun With UNIX">
2089   <short>This the second in a series of UNIX tutorials. Simon Law and
2090   James Perry will be presenting some more advanced UNIX
2091   techniques. All are welcome. Accounts will be provided for those
2092   needing them.</short>
2093   <abstract>
2094    <p>
2095     This is the second in a series of seminars that cover the use of
2096     the UNIX Operating System. UNIX is used in a variety of
2097     applications, both in academia and industry. We will provide you
2098     with hands-on experience with the Math Faculty's UNIX environment
2099     in this tutorial.
2100    </p>
2101    <p>Topics that will be discussed include:</p>
2102    <ul>
2103     <li>Interacting with Bourne and C shells</li>
2104     <li>Editing text using the vi text editor</li>
2105     <li>Editing text using the Emacs display editor</li>
2106     <li>Multi-tasking and the screen multiplexer</li>
2107    </ul>
2108    <p>
2109      If you do not have a Math computer account, don't panic; one will
2110      be lent to you for the duration of this class.
2111    </p>
2112   </abstract>
2113  </eventitem>
2114  <eventitem date="2002-03-01" time="5:00 PM" room="MC4060"
2115   title="Computer Go, The Ultimate">
2116   <short>Thomas Wolf from Brock University will be holding a talk on
2117   the asian game of Go. All are welcome.</short>
2118   <abstract>
2119    <p>
2120     The asian game go is unique in a number of ways. It is the oldest
2121     board game known. It is a strategy game with very simple
2122     rules. Computer programs are very weak despite huge efforts and
2123     prizes of US$ &gt; 1.5M for a program beating professional
2124     players. The talk will quickly explain the rules of go, compare go
2125     and chess, mention various attempts to program go and describe our
2126     own efforts in this field. Students will have an opportunity to
2127     solve computer generated go problems. Prizes will be available.
2128    </p>
2129   </abstract>
2130  </eventitem>
2131
2132   <!-- Spring 2002 -->
2133
2134   <eventitem date="2002-05-11" time="7:00 PM" room="MC3036" title="S02
2135     elections">
2136     <short>Come and vote for this term's exec</short>
2137     <abstract>
2138       <p>
2139         Vote for the exec this term. Meet at the CSC office.
2140       </p>
2141     </abstract>
2142   </eventitem>
2143
2144
2145   <!-- Fall 2002 -->
2146
2147   <eventitem date="2002-09-16" time="5:30 PM" room="Comfy lounge"
2148   title="F02 elections">
2149     <short>Come and vote for this term's exec</short>
2150     <abstract>
2151       <p>
2152         Vote for the exec this term. Meet at the comfy
2153         lounge. There will be an opportunity to obtain or renew
2154         memberships. This term's CRO is Siyan Li
2155         (s8li@csclub.uwaterloo.ca).
2156       </p>
2157     </abstract>
2158   </eventitem>
2159
2160   <eventitem date="2002-09-30" time="6:30 PM" room="Comfy lounge, MC3001"
2161   title="Business Meeting">
2162     <short>Vote on a constitutional change.</short>
2163     <abstract>
2164       <p>
2165          The executive has unanimously decided to try to change our
2166 constitution to comply with MathSoc policy.  The clause we are trying
2167 to change is the membership clause.  The following is the proposed new
2168 reading of the clause.
2169       </p>
2170       <p><i>
2171         In compliance with MathSoc regulations and in recognition of
2172 the club being primarily targeted at undergraduate students, full
2173 membership is open to all undergraduate students in the Faculty of
2174 Mathematics and restricted to the same.</i>
2175       </p>
2176
2177       <p>
2178         The proposed change is illustrated <a
2179         href="http://www.csclub.uwaterloo.ca/docs/constitution-change-20020920.html">on
2180         a web page</a>.
2181       </p>
2182
2183       <p>
2184         There will be a business meeting on 30 Sept 2002 at 18:30 in
2185         the comfy lounge, MC 3001. Please come and vote
2186       </p>
2187     </abstract>
2188   </eventitem>
2189
2190   <eventitem date="2002-09-26" time="5:30 PM" room="MC3006"
2191   title="UNIX 101">
2192     <short>First Steps with UNIX</short>
2193     <abstract>
2194       <p>
2195            Get to know UNIX and be the envy of your friends!
2196       </p>
2197       <p>
2198         This is the first in a series of seminars that cover the use
2199         of the UNIX Operating System.  UNIX is used in a variety of
2200         applications, both in academia and industy. We will provide
2201         you with hands-on experience with the Math Faculty's UNIX
2202         environment in this seminar.
2203       </p>
2204       <p>
2205         Topics that will be discussed include:
2206       </p>
2207       <ul>
2208         <li>Navigating the UNIX environment</li>
2209         <li>Using common UNIX commands</li>
2210         <li>Using the PICO text editor</li>
2211         <li>Reading electronic mail and news with PINE</li>
2212       </ul>
2213       <p>
2214     If you do not have a Math computer account, don't panic; one will be 
2215 lent to you for the duration of this class.
2216       </p>
2217     </abstract>
2218   </eventitem>
2219
2220   <eventitem date="2002-10-01" time="6:30 PM-9:30 PM" room="The Bomber"
2221   title="Pints with the Profs">
2222     <short>Get to know your profs and be the envy of your friends!</short>
2223     <abstract>
2224     <p>Come out and meet your professors.  This is a great opportunity to
2225 meet professors for Undergraduate Research jobs or to find out who you might
2226 have for future courses.</p>
2227
2228     <p>Profs who have confirmed their attendance are:</p>
2229     <ul>
2230       <li>Troy Vasiga, School of Computer Science</li>
2231       <li>J.P. Pretti, St. Jerome's and School of Computer Science</li>
2232       <li>Michael McCool, School of Computer Science, CGL</li>
2233       <li>Martin Karsten, School of Computer Science, BBCR</li>
2234       <li>Gisli Hjaltason, School of Computer Science, DB</li>
2235     </ul>
2236
2237     <p>There will also be...</p>
2238     <ul>
2239       <li>Free Food</li>
2240       <li>Free Food</li>
2241       <li>Free Food</li>
2242     </ul>
2243     </abstract>
2244   </eventitem>
2245
2246   <eventitem date="2002-10-03" time="5:30 PM" room="MC3006"
2247   title="UNIX 102">
2248     <short>Talking to your UNIX can be fun and profitable.</short>
2249     <abstract>
2250 <p>This is the second in a series of seminars that cover the use of
2251 the UNIX Operating System. UNIX is used in a variety of applications,
2252 both in academia and industry. We will provide you with hands-on
2253 experience with the Math Faculty's UNIX environment in this
2254 tutorial.</p>
2255
2256 <p>Topics that will be discussed include:</p>
2257 <ul><li>Interacting with Bourne and C shells</li>
2258 <li>Editing text using the vi text editor</li>
2259 <li>Editing text using the Emacs display editor</li>
2260 <li>Multi-tasking and the screen multiplexer</li>
2261 </ul>
2262
2263 <p>If you do not have a Math computer account, don't panic; one will be
2264 lent to you for the duration of this class.</p>
2265
2266 </abstract>
2267   </eventitem>
2268
2269   <eventitem date="2002-10-08" time="4:30PM" room="MC4045"
2270   title="Video cards, Linux display drivers and the Kernel Graphics Interface (KGI)">
2271     <short>A talk by Filip Spacek, KGI developer</short>
2272     <abstract>
2273     Linux has proven itself as a reliable operating system but arguably,
2274     it still lacks in support of high performance graphics
2275     acceleration. This talk will describe basic components of a PC video
2276     card and the design and limitations the current Linux display driver
2277     architecture.  Finally a an overview of a new architecture, the Kernel
2278     Graphics Interface (KGI), will be given.  KGI attempts to solve the
2279     shortcomings of the current design, and provide a lightweight and
2280     portable interface to the display subsystem.
2281     </abstract>
2282   </eventitem>
2283
2284   <eventitem date="2002-10-10" time="5:30pm" room="MC3006"
2285   title="UNIX 103">
2286     <short></short>
2287     <abstract>No abstract available yet.</abstract>
2288   </eventitem>
2289
2290   <eventitem date="2002-11-05" time="4:30 PM" room="MC 2065"
2291   title="The Evil Side of C++">
2292     <short>Abusing template metaprogramming in C++; aka. writing a
2293     Mandelbrot generator that runs at compile time</short>
2294     <abstract>
2295       <p>Templates are a useful feature in C++ when it comes to writing
2296     type-independent data structures and algorithms. Relatively soon
2297     after their appearance it was realised that they could be used to
2298     do much more than this. Essentially it is possible to write
2299     certain programs in C++ that execute <i>completely at compile
2300     time</i> rather than run time. Combined with constant-expression
2301     optimisation this is an interesting twist on regular C++
2302     programming.</p>
2303     <p>This talk will give a short overview of the features of
2304     templates and then go on to describe how to &quot;abuse&quot;
2305     templates to perform complex computations at compile time. The
2306     speaker will present three programs of increasing complexity which
2307     execute at compile time. First a factorial listing program, then a
2308     prime listing program will be presented. Finally the talk will
2309     conclude with the presentation of a <b>Mandelbrot generator running
2310     at compile time</b>.</p>
2311
2312     <p>If you are interested in programming for the fun of it, the C++
2313     language or silly tricks to do with languages, this talk is for
2314     you. No C++ knowledge should be necessary to enjoy this talk, but
2315     programming experience will make it more worthwile for you.</p>
2316
2317     </abstract> </eventitem>
2318
2319   <eventitem date="2002-11-02" time="11:00AM-3:00PM"
2320     room="MC3002 (Math Coffee and Donut Store)"
2321     title="GNU/Linux InstallFest with KW-LUG and UW-DIG">
2322     <short>Bring over your computer and we'll help you install GNU/Linux</short>
2323     <abstract>
2324       <p>The <a href="http://www.csclub.uwaterloo.ca/">CSC</a>, the <a
2325       href="http://www.kwlug.org/">KW-Linux User Group</a>, and the <a
2326       href="http://uw-dig.uwaterloo.ca/">UW Debian Interest Group</a>
2327       are jointly hosting a GNU/Linux InstallFest.  GNU/Linux is a
2328       powerful, free operating system for your computer.  It is mostly
2329       written by talented volunteers who like to share their efforts
2330       and help each other.</p>
2331
2332       <p>Perhaps you have are you interested in installing GNU/Linux.
2333       If so, bring your computer, monitor and keyboard; and we will
2334       help you install GNU/Linux on your machine.  You can also find
2335       knowledgable people who can answer your questions about
2336       GNU/Linux.</p>
2337
2338       <hr />
2339
2340       <h3>Frequently Asked Questions</h3>
2341
2342 <p><b>Q: </b>What is GNU/Linux?<br />
2343 <b>A: </b>GNU/Linux is a free operating system for your computer.  It is mostly
2344    written by talented volunteers who like to share their efforts.
2345 </p>
2346
2347 <p><b>Q: </b>Free?<br />
2348 <b>A: </b>GNU/Linux is available for zero-cost.  As well, it allows you such
2349    freedom to share it with your friends, or to modify the software to
2350    your own needs and share that with your friends.  It's very friendly.
2351 </p>
2352
2353 <p><b>Q: </b>What is an InstallFest?<br />
2354 <b>A: </b>An InstallFest is a meeting where volunteers help people install
2355    GNU/Linux on their computers.  It's also a place to meet users, and
2356    talk to them about running GNU/Linux.
2357 </p>
2358
2359 <p><b>Q: </b>What kind of computer do I need to use GNU/Linux?<br />
2360 <b>A: </b>Almost any recent computer will do.  If you have an old machine
2361    kicking around, you can install GNU/Linux on it as well.  If it is
2362    at least 5 years old, it should be good enough.
2363 </p>
2364
2365 <p><b>Q: </b>Can I have Windows and GNU/Linux on the same computer?<br />
2366 <b>A: </b>If you can run Windows now, and you have an extra gigabyte (GB) of
2367    disk space to spare; then it should be possible.
2368 </p>
2369
2370 <p><b>Q: </b>What should I bring if I want to install GNU/Linux?<br />
2371 <b>A: </b>You will want to bring:</p>
2372 <ol>
2373 <li>Computer</li>
2374 <li>Monitor and monitor cable</li>
2375 <li>Power cords</li>
2376 <li>Keyboard and mouse</li>
2377 </ol>
2378
2379     </abstract>
2380   </eventitem>
2381
2382   <eventitem date="2002-11-07" time="5:30pm" room="MC4063"
2383   title="The GNU General Public License">
2384     <short>The teeth of Free Software</short>
2385     <abstract>
2386 <p>
2387 <blockquote>
2388 <i>
2389 The licenses for most software are designed to take away your freedom
2390 to share and change it. By contrast, the GNU General Public License
2391 is intended to guarantee your freedom to share and change free
2392 software---to make sure the software is free for all its users.
2393 </i><br/>--- Excerpt from the GNU GPL
2394 </blockquote>
2395 </p>
2396 <p>The GNU General Public License is one of the most influencial
2397 software licenses in this day.  Written by Richard Stallman for the
2398 GNU Project, it is used by software developers around the world to
2399 protect their work.
2400 </p>
2401 <p>
2402 Unfortunately, software developers do not read licenses thoroughly, nor
2403 well.  In this talk, we will read the entire GNU GPL and explain the
2404 implications of its passages.  Along the way, we will debunk some myths
2405 and clarify common misunderstandings.
2406 </p>
2407 <p>
2408 After this session, you ought to understand what the GNU GPL means, how
2409 to use it, and when you cannot use it.  This session should also give
2410 you some insight into the social implications of this work.
2411 </p>
2412     </abstract>
2413   </eventitem>
2414
2415   <eventitem date="2002-11-19" time="4:30pm" room="MC4058"
2416    title="Metaprogramming GPUs">
2417    <short>A talk by Michael McCool of the Computer Graphics Lab.</short>
2418    <abstract>
2419 <p>
2420 Modern graphics accelerators, or "GPUs", have embedded high-performance 
2421 programmable components in the form of vertex and fragment shading units. 
2422 Recently, these units have evolved from 8-bit computations to floating-point,
2423 and other operations provide array gather, scatter, and summation.
2424 These capabilities make GPUs akin to array processors of the 
2425 past, but with a difference: every PC now has one!  I am interested 
2426 in finding the best way to exploit this computational capacity for not
2427 only graphics but for general-purpose computation.
2428 </p><p>
2429 Current APIs permit specification of the programs for GPUs
2430 using an assembly-language level interface.  Compilers for high-level 
2431 shading languages are available, such as NVIDIA's Cg, and OpenGL 2.0 and 
2432 DirectX will also include standardized shading languages.  This talk will 
2433 review these.  However, compilers for these languages read in an external 
2434 string specification, which can be inconvenient.   
2435 </p><p>
2436 However, it is possible, using standard C++, to define a high-level
2437 shading language directly in the API.  Such a language can be nearly
2438 indistinguishable from a special-purpose programming language, yet  
2439 permits more direct interaction with the specification of textures 
2440 (arrays) and parameters, simplifies implementation, and enables
2441 on-the-fly generation, manipulation, and specialization of shader programs.
2442 A shading language built into the API also permits the lifting of
2443 C++ host language type, modularity, and scoping constructs into the shading
2444 language without any additional implementation effort.   Such an
2445 embedded language could be used to program other embedded processors
2446 (such as DSP chips in sound cards) or even to generate machine language
2447 on the fly for the host CPU.
2448 </p>
2449     </abstract>
2450   </eventitem>
2451
2452   <eventitem date="2002-11-16" time="1:30pm" room="York University"
2453   title="Trip to York University">
2454     <short>Going to visit the York University Computer Club</short>
2455     <abstract><p>YUCC and the UW CSC have having a join meeting at York 
2456 University.  Dave Makalsky, the President of YUCC, will be giving a talk on 
2457 Design-by-constract and Eiffel.  Stefanus Du Toit, Vice-President of the UW 
2458 CSC, will be giving a talk on the evil depths of the black art known as C++.
2459 </p><p>Schedule</p>
2460 <ul><li>1:30pm: Leave UW</li>
2461 <li>3:00pm: Arrive at York University.</li>
2462 <li>3:30pm: The Evil side of C++</li>
2463 <li>4:30pm: Design-by-Contract and Eiffel</li>
2464 <li>6:00pm: Dinner</li>
2465 <li>9:00pm: Arrive back at UW</li>
2466 </ul>
2467 </abstract>
2468   </eventitem>
2469
2470   <eventitem date="2002-11-21" time="6:00pm" room="MC2066"
2471   title="Perl 6">
2472     <short>A talk by Simon Law</short>
2473     <abstract>
2474       <p>
2475         Perl, the Practical Extraction and Reporting Language can only
2476         be described as an eclectic language, invented and refined by
2477         a deranged system administrator, who was trained as a
2478         linguist.  This man, however, has declared:
2479       </p>
2480       <blockquote>
2481         <i>
2482           Perl 5 was my rewrite of Perl.
2483           I want Perl 6 to be the community's rewrite of Perl and of the
2484           community.
2485         </i><br/>--- Larry Wall
2486       </blockquote>
2487       <p>
2488         Whenever a language is designed by a committee, it is common
2489         wisdom to avoid it.  Not so with Perl, for it cannot get
2490         worse.  However strange these Perl people seem, Perl 6 is a
2491         good thing coming.  In this talk, I will demonstrate some Perl
2492         5 programs, and talk about their Perl 6 counterparts, to show
2493         you that Perl 6 will be cleaner, friendlier, and prettier.
2494       </p>
2495     </abstract>
2496   </eventitem>
2497
2498   <eventitem date="2002-11-21" time="4:30pm" room="MC2066"
2499    title="Samba and You">
2500     <short>A talk by Dan Brovkovich, Mathsoc's Computing Director</short>
2501     <abstract><p>
2502 Samba is a free implementation of the Server Message Block (SMB)
2503 protocol. It also implements the Common Internet File System (CIFS)
2504 protocol, used by Microsoft Windows 95/98/ME/2000/XP to share files and
2505 printers. </p><p>
2506 SMB was originally developed in the early to mid-80's by IBM and was
2507 further improved by Microsoft, Intel, SCO, Network Appliances, Digital
2508 and many others over a period of 15 years. It has now morphed into CIFS,
2509 a form strongly influenced by Microsoft. </p><p>
2510 Samba is considered to be one of the key projects for the acceptance of
2511 GNU/Linux and other Free operating systems (e.g. FreeBSD) in the
2512 corporate world: a traditional Windows NT/2000 stronghold. </p><p>
2513 We will talk about interfacing Samba servers and desktops with the
2514 Windows world.  From a simple GNU/Linux desktop in your home to the
2515 corporate server that provides collaborative file/printer sharing,
2516 logons and home directories to hundreds of users a day. </p>
2517     </abstract>
2518   </eventitem>
2519
2520   <eventitem date="2002-10-26" time="1:30PM" room="MC2066"
2521   title="GNU/Linux on HPPA">
2522     <short>Carlos O'Donnell talks about &quot;the last of the legacy processors to fall before the barbarian horde&quot;</short>
2523     <abstract>
2524 <p>This whirlwind talk is aimed at providing an overview of the
2525 GNU/Linux port for the HP PARISC processor. The talk will focus on
2526 the &quot;intricacies&quot; of the processor, and in particular the
2527 implementations of the Linux kernel and GNU Libc. After the talk
2528 you should be acutely aware of how little code needs to be written
2529 to support a new architecture! Carlos has been working on the port
2530 for two years, and enjoying the fruits of his labour on a 46-node
2531 PARISC cluster.</p>
2532
2533 <hr />
2534 <p>
2535 Carlos is currently in his 5th year of study at the University
2536 of Western Ontario. This is his last year in a concurrent
2537 Computer Engineering and Computer Science degree. His research
2538 interest range from distributed and parallel systems to low
2539 level optimized hardware design. He likes playing guitar and
2540 just bought a Cort NTL-20, jumbo body, solid spurce top with
2541 a mahogany back. Carlos hacks on the PARISC Linux kernel, GNU libc,
2542 GNU Debugger, GNU Binutils and various Debian packages.
2543 </p>
2544
2545
2546 </abstract>
2547   </eventitem>
2548
2549   <eventitem date="2002-10-26" time="3:00PM" room="MC2066"
2550   title="The Hurd Interfaces">
2551     <short>Marcus Brinkmann, a GNU Hurd developer, talks about the Hurd server interfaces, at the heart of a GNU/Hurd system</short>
2552     <abstract>
2553 <p>The Hurd server interfaces are at the heart of the Hurd system.  They
2554  define the remote procedure calls (RPCs) that are used by the servers, the
2555  GNU C library and the utility programs to communicate with the Hurd system
2556  and to implement the POSIX personality of the Hurd as well as other
2557  features.</p>
2558
2559 <p>This talk is a walk through the Hurd RPCs, and will give an overview of how
2560  they are used to implement the system.  Individual RPCs will be used to
2561  illustrate important or exciting features of the Hurd system in general,
2562  and it will be shown how those features are accessible to the user at the
2563  command line, too.</p>
2564
2565  <hr />
2566
2567  <p>Marcus Brinkmann is a math student at the Ruhr-Universitaet Bochum in
2568  Germany.  He is one of maintainers of the GNU Hurd project and the
2569  initiator of the Debian GNU/Hurd binary distribution.  He designed and
2570  implemented the console subsystem of the Hurd, wrote the FAT filesystem
2571  server, and fixed a lot of bugs, thus increasing the stability and
2572  usability of the system.</p>
2573
2574     </abstract>
2575   </eventitem>
2576
2577   <eventitem date="2002-10-26" time="4:30PM" room="MC2066"
2578   title="A GNU Approach to Virtual Memory Management in a Multiserver Operating System">
2579     <short>Neal Walfield, a GNU Hurd developer, talks about a possible Virtual Memory Management subsystem for the GNU Hurd</short>
2580     <abstract>
2581 <p>Virtual memory management is one of the cornerstones of multiuser
2582 operating systems.  Most systems available today place all of the
2583 policy in a monolithic virtual memory manager, VMM, isolated from the
2584 rest of the system.  Although secure and lightweight, users have no
2585 way to communicate their anticipated memory needs and usage to the
2586 system pager.  As a result, the VMM can only implement a global paging
2587 policy (typically, an approximation of LRU) which may be good on
2588 average but is best for nobody.</p>
2589
2590 <p>With the port of Hurd to the L4 microkernel, this situation is being
2591 readdressed.  Due to its more distributed nature, a centralized
2592 resource manager is not only more difficult to implement efficiently
2593 but also contrary to the philosophy of the rest of the system.  We are
2594 currently exploring a model whereby each program is fully self-paged
2595 and all compete for memory from a physical memory server.  This talk
2596 will first discuss how paging currently works in Mach and other
2597 systems.  An argument for an external paging policy will then be
2598 presented followed by the requirements of such a design and the design
2599 itself.</p>
2600
2601 <hr />
2602
2603 <p>Neal Walfield, a GNU Hurd developer, is from the University of Massachusetts
2604 Lowell.  Neal spent the summer of 2002 at University of Karlsruhe working
2605 on porting the GNU Hurd to L4.</p>
2606
2607     </abstract>
2608   </eventitem>
2609
2610   <eventitem date="2002-10-17" time="5:30PM" room="MC2065"
2611   title="Debian in the Enterprise">
2612     <short>A talk by Simon Law</short>
2613     <abstract>
2614 <p>The Debian Project produces a &quot;Universal Operating System&quot; that is
2615 comprised entirely of Free Software.  This talk focuses on using Debian
2616 GNU/Linux in an enterprise environment.  This includes:</p>
2617 <ul>
2618   <li>Where Debian can be deployed</li>
2619   <li>Strategic advantages of Debian</li>
2620   <li>Ways for business to give back to Debian</li>
2621 </ul>
2622    </abstract>
2623   </eventitem>
2624
2625   <eventitem date="2002-11-12" time="4:30PM" room="MC4058"
2626   title="Automatic Memory Management and Garbage Collection">
2627     <short>A talk by James A. Morrison</short>
2628     <abstract>
2629 <p>
2630   Do you ever wonder what java is doing while you wait?  Have you ever used
2631 Modula-3?  Do you wonder how lazily you can Mark and Sweep?  Would you like to
2632 know how to Stop-and-Copy?
2633 </p><p>
2634  Come out to this talk and learn these things and more.  No prior knowledge of
2635 Garbage Collection or memory management is needed.
2636 </p>
2637    </abstract>
2638   </eventitem>
2639
2640 </eventdefs>
2641