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