Undergraduate Newsletter for September, 2002 -------------------------------------------- Dear CS Student: Welcome back to BU and a new school year! I hope, like me, that although you wish the summer had gone on just a bit longer, you are looking forward to new challenges and experiences in the fall term. I'd like to take this opportunity to fill you in on news for the coming year, including some new courses and a new faculty member. But before I do, I'd like to remind you that as Undergraduate Director for the CS Department, I am available to you by email, phone, or in person to help you with any aspect of your studies in the CS department. I invite you to come by to discuss any concerns or issues you have, and I invite you to come by to give me feedback on our courses, teachers, or computing infrastructure. Here is my contact information: Associate Professor Wayne Snyder Undergraduate Director, CS Department Office: MCS 283 Office Hours: MW 1:30 - 3:00 Email: snyder@cs.bu.edu Phone: 353-8926 (but I prefer email!) Web: www.cs.bu.edu/snyder/Home.html Ok, here's the news... New Faculty Member ------------------ Last year we hired Shuang-Hua Teng, a well-known researcher in algorithms and theory. He is a full professor in the CS department, as well as a visiting professor at MIT, an adjunct professor at the University of Indiana at Urbana-Champagne, and (just for good measure) a senior research scientist at Akamai Technologies. Shuang-Hua has worked on algorithms for parallel computation, computational geometry, and for the Internet. He is currently teaching a seminar (see below) on his research, but you will doubtless see him in our CS theory classes in the coming semesters. You can check him out on the web at: www.cs.bu.edu/fac/steng/Home.html. New C++ Course! --------------- For a long time we in the CS department have felt that additional courses focusing on the practical discipline of programming would be a big benefit to our students. Thus, we are pleased to be able to offer a new course this fall (in fact it starts TODAY!) focusing on C++ programming. Here is the course description: Course Number: CS 211 Course Name: Object-Oriented Programming Paradigms Meeting Time: TR 5-6:30 Meeting Place: MCS 148 Instructor: Dr. James Devlin Description: This course will introduce you to the fundamental paradigms of object-oriented programming in C++. Some introduction to C# may also be included. The basic intent of the course is to introduce the student to intermediate and advanced concepts in object-oriented and generic programming, based on the Standard Template Library (STL). In object-oriented programming, we will study the design of flexible and robust classes using inheritance and polymorphism. These paradigms, through the mechanism of parameterized templates, provide for the development of libraries of extensible and interoperable software components, the basis of modern software technology. The STL, which is now part of the C++ standard, is the best example of this trend, and we will study it in some detail. We will also consider the paradigm of generic programming which results from the extensive use of the STL and parameterized container classes. We will study the central tenets of generic programming: concepts, modeling, and refinements. The course will naturally center on the programming process, and for that we will use an integrate development platform such as Microsoft's Visual Studio .NET. Training in this platform will take place mostly in the lab sections. There will be regular programming assignments through the course, leading to a large-scale development team project at the end of the course. The instructor, James Devlin, is by training a professional philosopher, but also has extensive programming experience in industry. He is a dynamic teacher, and has taught for years both in the BU Core Curriculum, and in the BU Corporate Education center. This should be a great class! The course will not count towards your CS degree requirements, but can be used for elective credit (i.e., it is a normal 4 credit course, just not part of the CS requirements). It will be part of our normal fall schedule from now on. We hope to offer more elective courses, in C#, Java, networking, and multimedia in the semesters to come. Please come to the first class if you are interested! Miscellaneous Things to Note: ----------------------------- o Two new seminar courses -- we are able to offer two new 591 seminar courses that might be of interest to advanced CS undergraduates: - CS 591 A1 - Algorithms for a New Age This seminar, taught by Professor Teng, will focus on a new technique for complexity analysis, called "smoothed analysis," and on various algorithms for the Internet. - CS 591 W1 - Logic Seminar This seminar, taught by visiting professor Francois Metayer, will cover the "Curry-Howard Isomorphism," an important technique used in relating proof theory and the lambda-calculus (the basis for programming language semantics). You can find descriptions of these courses, and the meeting times and places, on our web schedule. o Please note that CS 111 A1 meets at MWF 11-12 instead of the 10-11 slot listed in the CS schedule (before I changed it this morning, that is). The BU student link time is correct. o CS 113 and CS 538 have exchanged rooms: CS 113 now meets in PRB 150, and CS 538 in CAS 432.   Finally, I'd like to call your attention to job opportunities for undergraduates in the department: o Graders for CS classes, from CS 101 to the 500 level are needed. Duties include grading homework in consultation with the instructor and Teaching Fellow, and maintaining the course database of grades. Please follow the link on the main CS page for details. o Terminal Assistants in the CS lab. Duties include staffing the help desk and (depending on your level of experience) helping maintain the department computing cluster. Please see Ernest Kim in the CS lab. -Wayne Snyder