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