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