Topics & Advanced Topics Courses

Each year we offer courses in specialized areas of interest and relevance to our students and faculty. Below are a list of our upcoming and recent offerings at both the introductory and advanced level:

2008 - 2009

Design for the Web (Topic, 2-256). Methods and principles for effective communication through the World Wide Web. Separation of content and format, organization that helps authors and readers, integration of text and images, and coordination of the dialog between machine and human being. Students will design, build, test, and present their own Web sites. The instructor would like to help students in all majors learn how to use an important and still young medium in their own work. TABAK

Geographical Information Systems (Topic, 9-257). Representation, analysis, and visualization of spatial data for applications in the natural and social sciences. Survey of current standards, available tools, significant achievements, and potential for the future development of the technology. Implications for public policy. Students will learn to use GIS software for the solution of problems related to their own major fields of interest. TABAK

Software Applications for the Web (Advanced Topic, 6-358). Design of software that includes components that execute on clients' machines and on remote servers, facilitate communication between clients and servers, and respond to clients' requests by querying databases. Identification of special challenges that arise in the development of applications for the Web. How to meet demands for scalability, reliability, performance, and security. Characteristics of the most successful applications for the Web. Prerequisites: CSC 140 and CSC 151. TABAK

Robotics (Advanced Topic, 6-359). Discusses the field of robotics, with an emphasis on designing and building small vehicles based on the VeX system that can explore and learn about the environment around them without human guidance.  This will be a project-centered class, with early projects being simple tasks such as processing input from sensors and navigating mazes, and involving a large student-chosen open-ended project.  Specific topics will include basic artificial intelligence, building and using sensors to make reliable measurements in the real world, and controlling systems in real-time based on those measurements. Prerequisites: CSC 213, and either CSC 218 or CSC 302. WILDENBERG


2007 - 2008

Bioinformatics (Advanced Topic). Exploration of the intersection between computer science and molecular biology, focusing on current problems in genomics and emphasizing discovery of the most effective methods for solving these problems. The course begins with an introduction to the relevant concepts in molecular biology for computer science students, and the relevant concepts in computer science for biology students. Topics may include DNA sequence assembly, probe/primer design, protein sequence comparison, motif/signal detection, hybridization array analysis, linkage analysis, RNA and protein folding, phylogenic trees, and DNA computers. Prerequisite: CSC 213 or BIO 205 or permission of instructor. WILDENBERG

Structure and Interpretation of Computer Programs (Advanced Topic). Students will gain a deeper understanding of principles of design through practice solving problems in a variety of domains, including image processing, data compression, symbolic algebra and differentiation, and simulation of digital circuits. By building an interpreter, students will gain insight into the design of the languages they use to program computers. Using the Scheme language (a dialect of Lisp) students will explore functional, logical, and object-oriented programming disciplines. This fast-paced course is an adaptation of a highly influential course developed at MIT. Prerequisites: CSC 140 and 151. TABAK


2006 - 2007

Software Engineering for Web Applications (Advanced Topic). Students will learn how to meet special challenges that arise when writing software for the Web. They will learn how to write software that can serve very large, widely distributed, and diverse audiences reliably, securely, and all at once. Teams will design and develop applications that they will make publicly available. Success will require effective collaboration, an ability to master new tools, and a readiness to adopt the discipline of a professional software engineer. This course will provide an intense experience for committed students. Prerequisites: CSC140 and CSC151. TABAK

Artificial Intelligence and Search Techniques (Advanced Topic). A survey of topics relating to artificial intelligence and the related search processes. Topics will be drawn from A* search, branch and bound, Minimax, linear discriminant, nearest-neighbor, hidden Markov models, natural language processing and basic data mining. Prerequisite: CSC213. WILDENBERG


2005 - 2006

Robotics (Advanced Topic). Discusses the field of robotics, with an emphasis on autonomous guided vehicles based on Lego Mindstorms. Will be a project centered class, with teams building vehicles to accomplish simple maze-related tasks. Programming techniques will include basic artificial intelligence, real-time programming, incorporating feedback from sensors, unknown variable estimation using a variety of filtering and control techniques. Prerequisites: CSC 213 and 218. WILDENBERG

Computer Networks (Advanced Topic). This course introduces principles and current trends in computer networks. The TCP/IP Reference Model will be used as the framework with the course progressing top down from application to transport, network, link and physical layers. Topics include motivation and objectives of computer networks, overview of network architectures, layered architectures, performance analysis, virtual circuits, datagrams, routing flow control, local area networks, internetworking, security, and client-server programming. Lab experience includes the design and implementation of projects such as simulation of the network/transport layer functions, routing, congestion control, and applications using TCP/IP or remote procedure calls, primarily in Java. Prerequisites: CSC 140 and 151. deLAUBENFELS/TABAK