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