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