Harvard Extension School 1999-00

 

Previous | Next

Courses:

Computer Science



Some of these courses are available on the Internet. See Distance Education for more information.

CSCI E-1 Introduction to Personal Computers and the Internet
4 units. Noncredit $950, undergraduate credit $1,250. Prerequisite(s): prior computing experience is helpful, but not necessary, for this course. However, basic typing skills are required. The course is designed to accommodate the most novice of computer users as well as intermediate users.

Fall term (11322) : David J. Malan, AB, Technical Analyst, Crimson Solutions, Inc. Wednesday, 5:30-7:30 pm. Harvard Hall 104. Sections to be arranged on weeknights and Saturday afternoon, optional computer workshops on Saturday afternoon. Course also available on the Internet
Spring term (21295) : David J. Malan, AB, Technical Analyst, Crimson Solutions, Inc. Wednesday, 5:30-7:30 pm. Science Center C. Sections to be arranged, optional computer workshops on Saturday afternoon. Course also available on the Internet

The Internet, World Wide Web, Java, HTML, browsers, search engines, e-mail, ISPs, modems, CPUs, RAM, cache, bits, bytes--what is it all about? This course is an introduction to the computer technology and terminology currently affecting us all. Through weekly lectures and hands-on sections, we will demystify personal computers and the Internet, making sense of their jargon, so that students acquire a general understanding of these concepts and are empowered for further exploration of information technologies. Syllabus online at http://www.courses.fas.harvard.edu/~cscie1. Students taking the course over the Internet must be adept with basic e-mail and web use.

Back to top of page.

CSCI E-3 Computer Programming Foundations Using Java (21578)
Latanya Sweeney, SM, Assistant Professor of Computer Science and of Public Policy, Carnegie Mellon University.
2 units. Undergraduate credit $360. Limited enrollment. Spring term.

Course available only on the Internet

Intended for students with no prior computer programming experience, this online course provides an introduction to object-oriented programming using the Java language. Students will write Java programs that control vehicles in a graphical world. Powerful feats will be accomplished in programs that do searching, sorting, and recursive-backtracking. Prospective students should visit the course website at http://sos.heinz.cmu.edu/intro/index.html before enrolling. While there will be direct contact with the instructor via e-mail and other means, the course is actually taught electronically over the World Wide Web using an "Active Tutor" (a computerized teaching-learning environment).

Back to top of page.

CSCI E-5 A Survey of Applied Computer Science (21216)
Joseph W. Marks, PhD, Lecturer in Extension, Harvard University and Research Scientist, Mitsubishi Electric Research Laboratory. William T. Freeman, PhD, Senior Research Scientist, Mitsubishi Electric Research Laboratory.
4 units. Undergraduate and graduate credit $1,250. Monday, 7:35-9:35 pm. 53a Church Street 2. Sections to be arranged. Prerequisite(s): basic familiarity with computer use. Limited enrollment. Spring term.

A case-based survey of ideas and examples of applied computer science. Cases will be taken from the fields of computer graphics, computer animation, image processing, computer vision, information retrieval, and artificial intelligence. Each case study will consist of two lectures: one an exposition of computer science concepts relevant to the case, and the other a hands-on introduction to a working system that embodies these concepts. Assignments will require the use of these systems to perform given tasks. Programming is not required, and will not be taught.

Back to top of page.

CSCI E-8 Legal Issues on the Internet (21523)
Michael Aaron Albert, JD, Counsel, Intellectual Property and Litigation, Foley, Hoag & Eliot LLP.
4 units. Graduate credit $1,250. Thursday, 5:30-7:30 pm. Science Center 102B. Sections Thursday, 7:35-8:35 pm. Spring term.

This interdisciplinary course will cover legal principles and recent developments in the law as they relate to Internet use. We will focus on intellectual property law (copyrights, trademarks, and patents) and First Amendment issues in e-mail, webpages, chat rooms, and virtual reality environments. Lectures will include legal topics, demonstrations of online communities and forums, and hands-on investigation by students.

Back to top of page.

CSCI E-10 Virtual Communities on the Internet (20910)
David Albert, MS.
4 units. Graduate credit $1,250. Tuesday, 5:30-7:30 pm. Science Center 102B. Optional sections to be arranged. Prerequisite(s): familiarity with computer use. Limited enrollment. Spring term.

The Internet is host to millions of people who exchange e-mail, post articles to discussion groups, and work and play together in online environments without ever meeting. This course offers an introduction to selected virtual communities, a historical overview of the virtual community, and a chance to get involved personally with Multi-User Domains (MUDs). Lecture topics include the growing use of the World Wide Web for community building; educational uses of virtual communities; issues of virtual self-government, security, privacy, and anonymity; and intelligent agents that simulate human behavior.

Back to top of page.

CSCI E-12 Introduction to Website Development
4 units. Noncredit $950, graduate credit $1,550. Prerequisite(s): a significant portion of the work will be in a UNIX environment, so familiarity with UNIX or experience with a command-line interface is essential. Experience with a programming language will be helpful.

Fall term (11247) : David P. Heitmeyer, BS, Web Systems Administrator, Faculty of Arts and Sciences Computer Services, Harvard University. Monday, 5:30-7:30 pm. Science Center D. Sections to be arranged. Course also available on the Internet Note: this course begins Monday, Sept. 27.
Spring term (21144) : David P. Heitmeyer, BS, Web Systems Administrator, Faculty of Arts and Sciences Computer Services, Harvard University. Course available only on the Internet

This course will provide an introduction to the many facets of establishing and maintaining a website. The first part of the course will be devoted to creating, designing, and publishing content on the Web (HTML 4.0, CSS, PDF, GIF, JPEG). CGI and JavaScript will be introduced. The second part of the course will cover configuring and maintaining a web server (Apache, UNIX, platform), including HTTP, access control, and SSL. Tools and methods for maintaining a website, such as log analysis, version control, and document verification, will also be covered. Technologies positioned to have widespread and significant impact on web development, such as XML, XSL, and DHTML, will be surveyed.

Back to top of page.

CSCI E-13 Web Programming in Perl (21215)
James Peregrino, BSEE, Manager of Computer Services, Division of Continuing Education, Harvard University.
4 units. Noncredit $950, graduate credit $1,250. Tuesday, 5:30-7:30 pm. Maxwell Dworkin Building, 33 Oxford Street, Room G125. Optional sections to be arranged. Prerequisite(s): confidence in programming (CSCI E-50b or equivalent experience in a programming language such as C or Pascal), solid understanding of HTML (CSCI E-12), experience with UNIX helpful. See http://lab.dce.harvard.edu/extension/cscie13 for complete syllabus and discussion of prerequisites. Limited enrollment. Spring term.

Course also available on the Internet

This course gives a thorough grounding in the Perl scripting language and CGI programming, which is a major part of large web servers. Students will create web applications based on real-world examples. Applications will include forms processing, database access, HTML-file manipulation, authentication, and web clients.

Back to top of page.

CSCI E-14 Understanding and Developing Multimedia
4 units. Noncredit $950, graduate credit $1,550. Prerequisite(s): solid understanding of the Macintosh or Windows operating system and any paint or graphics program. Limited enrollment.

Fall term (11200) : Scott Traylor, BA, President, Traylor Multimedia, Inc. Tuesday, 5:30-7:30 pm. 53a Church Street 1. Optional sections Tuesday, 7:35-9:35 pm.
Spring term (21366) : Scott Traylor, BA, President, Traylor Multimedia, Inc. Tuesday, 5:30-7:30 pm. 53a Church Street 1. Optional sections Tuesday, 7:35-9:35 pm.

Creating effective interactive experiences that combine sound, graphics, text, video, and animation is a process that involves skill, planning, and practice. In this course, students will develop the skills necessary for producing interactive multimedia projects using professional authoring tools, graphics programs, sound, and video editing packages. Software applications include Macromedia Director, Dreamweaver SoundEdit, Adobe Photoshop, and Premiere. Issues regarding communicating effectively through interactivity, interface design, computer configuration, performance, single- versus multi-platform use and development, and file size will be examined. Students will produce self-running interactive multimedia presentations that demonstrate their understanding of development from concept through completion.

Back to top of page.

CSCI E-17 Advanced Topics in Multimedia Development
4 units. Noncredit and graduate credit $1,550. Prerequisite(s): CSCI E-14 or experience with Macromedia Director and Adobe Photoshop; familiarity with a scripting or programming language is recommended. Limited enrollment.

Fall term (11516) : Marc Johnson, AB, Principal, Marcato Multimedia. Jennifer Fuchel, MFA, Assistant Professor of Graphic Design, Suffolk University. Friday, 7:35-9:35 pm. 53a Church Street 1. Optional sections to be arranged.
Spring term (21489) : Marc Johnson, AB, Principal, Marcato Multimedia. Jennifer Fuchel, MFA, Assistant Professor of Graphic Design, Suffolk University. Friday, 7:35-9:35 pm. 53a Church Street 1. Optional sections to be arranged.

This course covers intermediate to advanced topics in the multimedia development process, approaching multimedia as a combination of media arts and computer science. Students will learn about interactivity and programming issues, including object-oriented and modular, reusable project design. The design, creation, and delivery of multimedia content across a variety of platforms and delivery systems, including CD-ROM and the World Wide Web, will be covered. Students will develop solutions involving user interface design, project architecture, cross-platform considerations, color management, animation, and digital audio and video. Other topics include QuickTime VR, Shockwave, and database connectivity.

Back to top of page.

CSCI E-18 3-D Design and Animation (21450)
Peter Ivan Armstrong III, MPA, Communications Director, The Cambridge School of Weston.
4 units. Graduate credit $1,250. Wednesday, 7:35-9:35 pm. 53a Church Street 1. Optional sections to be arranged. Prerequisite(s): solid experience with multimedia software such as Adobe Illustrator and Photoshop. Limited enrollment. Spring term.

Advancements in the computer graphics industry have resulted in the development of a powerful arsenal of creative resources for home users as well as professionals. This course will introduce participants to the desktop technology used to produce breathtakingly realistic three-dimensional images and movies. Assignments and class exercises are designed to explore the kinds of tools and techniques media professionals use to produce film and video special effects, television commercials, animated shorts, computer games, and presentations for the World Wide Web.

Back to top of page.

CSCI E-23 Digital Libraries and the Internet (11466)
Bijoy M. Misra, PhD, Consultant.
4 units. Graduate credit $1,250. Wednesday, 5:30-7:30 pm. 53a Church Street 2. Sections to be arranged. Prerequisite(s): proficiency in the Macintosh or PC environment; prior experience in database design, image processing, and multimedia applications is recommended. Limited enrollment. Fall term.

We will study file formats, image compression, network communication, and image and text search methods applied to digital libraries. Text, pictures, music, and video collections will be covered. Emphasis will be on keyword indexing, picture search algorithms, and picture reproduction. Copyright issues will be surveyed. The use of digital libraries in the context of remote education will be discussed and analyzed.

Back to top of page.

CSCI E-50a Introduction to Computer Science Using Java, I
4 units. Undergraduate and graduate credit $1,250.

Fall term (10701) : Henry H. Leitner, PhD, Senior Lecturer on Computer Science, Harvard University. Monday, 5:30-7:30 pm. Science Center C. Sections to be arranged. Note: this course begins Monday, Sept. 27.
Spring term (20913) : Stanley J. Eigen, PhD, Associate Professor of Mathematics, Northeastern University. Monday, 7:35-9:35 pm. Science Center C. Sections to be arranged.

Intended for students with no previous programming background, this course introduces problem-solving methods and algorithm development using the high-level programming language Java. Students will learn how to design, code, debug, and document programs using modern engineering techniques in both UNIX and microcomputer environments. Related topics include the basic aspects of recursion, inheritance, parameter passing, file and stream I/O, classes, and functional decomposition to enable object-oriented design. Some applications and applets will be chosen for their relevance to more advanced coursework in computer science, while others will involve nonscientific and business-related areas.

Back to top of page.

CSCI E-50b Introduction to Computer Science Using C++, II
4 units. Undergraduate and graduate credit $1,250.

Fall term (10997) : James L. Frankel, PhD, Lecturer in Extension, Harvard University and Consulting Scientist, Frankel and Associates, Inc. Tuesday, 7:35-9:35 pm. Science Center C. Sections to be arranged.

A continuation of object-oriented programming (OOP) methodology and abstract data types (ADTs) using C++. Begins with simple data structures using strings, multidimensional arrays, pointers, and structures. Continues with classes, objects, and member functions. An introduction to RISC machine architecture and the representation of numeric, structured, and symbolic data. Additional topics include simulation, recursion, and the use of various tools for gathering information by exploring the Internet. Prerequisite: CSCI E-50a or equivalent experience in a high-level programming language such as Pascal, C, or Java.

Back to top of page.

CSCI E-50b Introduction to Computer Science Using Java, II Spring term (20659) : Henry H. Leitner, PhD, Senior Lecturer on Computer Science, Harvard University. Monday, 5:30-7:30 pm. Science Center C. Sections to be arranged.

A continuation of object-oriented programming (OOP) methodology using Java in both microcomputer and UNIX environments. Begins with simple abstract data types (ADTs) using classes, objects, and overloaded functions. Continues with strings, multidimensional arrays, vectors, and applets. An introduction to RISC machine architecture and the representation of numeric, structured, and symbolic data. Additional topics include simulation, recursion, exception handling, threads of execution, and graphical user interface (GUI) design. Prerequisite: CSCI E-50a or equivalent experience in a high-level programming language such as C, C++, or Java.

Back to top of page.

CSCI E-113 Introduction to C, UNIX, and CGI Programming (10033)
Bruce Molay, AB, Lecturer in Extension, Harvard University.
4 units. Graduate credit $1,250. Monday, 7:35-9:35 pm. Science Center 102B. Optional sections to be arranged. Prerequisite(s): a working knowledge of a structured programming language such as C++, Java, or Pascal; a data structures course such as CSCI E-119. Fall term.

Note: this course begins Monday, Sept. 27.

Designed for students with some programming experience, this course provides a rigorous introduction to writing and using software tools in the UNIX programming environment and on the World Wide Web. The curriculum covers the C programming language, UNIX shell scripts, HTML, and CGI programming. Topics include text processing, memory management, files and pipes, processes and protocols. Students will write programs to analyze data and generate reports, use shell scripts to combine tools into applications and interactive web pages, and use CGI to provide web access to databases.

Back to top of page.

CSCI E-119 Data Structures
4 units. Noncredit $950, undergraduate and graduate credit $1,250. Prerequisite(s): a good working knowledge of Java or C++, and familiarity with precalculus (MATH E-10 or equivalent).

Fall term (10034) : Jeff Parker, PhD, Lecturer in Extension, Harvard University and Principal Software Engineer, Nexabit Networks. Wednesday, 7:35-9:35 pm. Harvard Hall 202. Sections to be arranged.
Spring term (21508) : Jeff Parker, PhD, Lecturer in Extension, Harvard University and Principal Software Engineer, Nexabit Networks. Thursday, 7:35-9:35 pm. Harvard Hall 201. Sections to be arranged. Spring section available on the Internet

A survey of the fundamental data structures for information processing: strings, sets, arrays, sequential files, stacks, queues, linked lists, trees (including AVL and B-trees), and graphs. The course will explore the implementation of these structures and study their use in solving complex problems. Applications include topics such as sorting and searching, record management, and backtracking algorithms. The Java programming language will be used to demonstrate the algorithms discussed, though assignments will be accepted in Java or C++. Key notions of object-oriented programming, including encapsulation and abstract data types, will be emphasized.

Back to top of page.

CSCI E-123 Laboratory Electronics: Digital Circuit Design (20974)
Thomas C. Hayes, JD, Lecturer on Physics, Harvard University.
4 units. Undergraduate and graduate credit $1,250. Thursday, 6-9:30 pm. Science Center 206. Prerequisite(s): high school algebra and some modest familiarity with analog electronics. PHYS E-123a is not a prerequisite. Limited enrollment. Spring term.

Students need proof of registration to be admitted to Science Center classrooms above the first floor.

This course forms the digital half of a two-semester sequence that provides a lab-intensive survey of electronics (the analog half of the sequence is PHYS E-123a). It covers digital design, emphasizing microprocessors and microcontrollers as well as PLDs (programmable logic devices, often called PALs and GALs), and provides an understanding of the fundamentals of computer innards and a set of practical skills useful in the application of computers. Students will apply PLDs first in implementing an interface card for an IBM PC. After examining analog-digital interfacing issues, students will build a microcomputer from the chip level. They will apply this computer first to assigned tasks, later to individual projects. Each student also will work with a single-chip microcontroller development system which allows one to implement designs outside class time. Each meeting includes a laboratory session.

Back to top of page.

CSCI E-124 Algorithms and Data Structures (21462)
Michael Mitzenmacher, PhD, Assistant Professor of Computer Science on the Gordon McKay Endowment, Harvard University.
4 units. Graduate credit $1,250. Monday, 5:30-7:30 pm. Maxwell Dworkin Building, 33 Oxford Street, Room G125. Optional sections to be arranged. Prerequisite(s): data structures (CSCI E-119) and discrete mathematics (MATH E-104). Spring term.

A course on the design and analysis of efficient algorithms and their associated data structures. Sorting, searching, graph algorithms, and general algorithm design techniques will be covered.

Back to top of page.

CSCI E-129 Communication Systems and Technology (11695)
R. Victor Jones, PhD, Robert L. Wallace Professor of Applied Physics, Harvard University.
4 units. Noncredit $950, graduate credit $1,250. Wednesday, 7:35-9:35 pm. Cruft Hall 318. Prerequisite(s): a sound knowledge of precalculus mathematics is essential (MATH E-10 or equivalent); some minimal exposure to physics is recommended (PHYS E-1a or equivalent). The course is structured to accommodate students with a wide range of scientific and mathematical backgrounds. Fall term.

An introduction to telecommunications that traces the development of various technical means for communicating and the evolution of our conceptual understanding of communication processes. General topics for discussion include: representations of information encoding; measures of information content; characteristics of visual and auditory information; spectral analysis and processing of signals; information transmission with and without wires. Illustrative case studies include: radio and television broadcasting; cellular telephony and PCS; communication satellites; fiber optical communication; audio, video, and data recording; telephone and data networks. Web resources and computer simulations are used extensively.

Back to top of page.

***CSCI E-130 for the spring term has been CANCELLED.***

CSCI E-130 Advanced Information Technology Management (21498)
Richard E. Joltes, BA, Technical Support Engineer, IBM Transarc Laboratory.
4 units. Graduate credit $1,250. Tuesday, 7:35-9:35 pm. Harvard Hall 104. Sections to be arranged. Prerequisite(s): minimum two to three years of professional experience in system or network management; understanding of Ethernet networks; administrator-level knowledge of either Windows NT or a UNIX variant. Spring term

Information technology (IT) management requires more than just connecting equipment and installing software; it also mandates planning and control in order to maintain reliable services. This course examines all major aspects of successful, high-availability IT management. Covered topics include network and machine room design, operations management, backups and disaster planning/recovery, and distributed systems and network management.

***CSCI E-130 for the spring term has been CANCELLED.***

Back to top of page.

CSCI E-131b Communication Protocols and Internet Architectures
4 units. Noncredit $950, graduate credit $1,250. Prerequisite(s): programming or computer architecture experience and a basic understanding of the principles of communication. Students may visit the first lecture at http://DistanceEd.dce.harvard.edu.

Fall term (11353) : Leonard Evenchik, MS, Lecturer in Extension, Harvard University. Monday, 7:35-9:35 pm. Science Center D. Sections to be arranged. Course also available on the Internet Note: this course begins Monday, Sept. 27.
Spring term (21387) : Leonard Evenchik, MS, Lecturer in Extension, Harvard University. Course available only on the Internet

Networks are now too large, complex, and diverse to be built on an ad hoc basis. This course provides a structured approach to the design, analysis, and implementation of networks and protocols. We will study various protocols, including TCP/IP; WWW/HTTP; ATM; multimedia protocols for voice, data, and video; and the IEEE 802 LAN protocol suite. In each case, the protocol's functions and the underlying reference model will be discussed. LAN architecture and design, internetworking using switches and routers, and the design and analysis of both private networks and the Internet will be presented. The course also will discuss new areas of work, including network quality of service, policy-based networks and broad-band/gigabit networks.

Back to top of page.

CSCI E-132 Advanced Topics in Data Networking Protocols and Network Architectures (21257)
Scott Bradner, Senior Technical Consultant, University Information Systems, Harvard University.
4 units. Noncredit $950, graduate credit $1,250. Friday, 5:30-7:30 pm. Science Center Hall A. Prerequisite(s): a good understanding of data networks or CSCI E-131b. Spring term.

Course also available on the Internet

This course provides in-depth exploration of a number of topics important in the design and operation of modern data networks. It is intended for people who will be involved in the details of data network planning, design, or support. Topics will include TCP/IP, IPv6 (the next generation of IP), SNMP, network architectures, quality of service, network security, performance testing of network devices, routing theory and practice, and the architecture and operation of routers, frame switches, and ATM switches.

Back to top of page.

CSCI E-141 Developing Windows Applications Using Visual C++ (11511)
Paul G. Bamberg, DPhil, Lecturer in Extension, Harvard University and Vice President, Dragon Fellow, Dragon Systems, Inc.
4 units. Graduate credit $1,250. Tuesday, 5:30-7:30 pm. Science Center D. Sections to be arranged. Prerequisite(s): an introductory course in C++. Experience as a user of Windows 95/98/NT will be helpful, but no Windows programming experience is assumed. Students are expected to have a Visual C++ 5.0 or 6.0 development environment and internet access. Fall term.

The theme of the course is that Windows application programs that require a user interface are most efficiently developed by taking advantage of the Microsoft Foundation Classes and the wizards of Visual C++ to supply all code that is not unique to the application. From the start, students will develop interesting applications with a professional-looking user interface: first dialog-based applications, then property sheets and wizards with multiple dialogs, and finally document-view applications. Key concepts of Windows and C++ will be introduced as appropriate.

Back to top of page.

CSCI E-160 Java for Distributed Computing (21331)
Charles M. Sawyer, Jr., MS, Principal Support Engineer, Novera Software.
4 units. Noncredit $950, graduate credit $1,250. Wednesday, 7:35-9:35 pm. Science Center C. Sections to be arranged. Prerequisite(s): no prior knowledge of Java is required, but substantial experience with another programming language, preferably an object-oriented language, is a prerequisite. Spring term.

Course also available on the Internet

This course comprises a rigorous study of the core Java programming language, followed by an inquiry into its most promising area of application, building distributed systems. The first part will cover classes and inheritance, abstract classes, interfaces, exceptions, threads, packages, events, reflection, and javadoc (the tool for extracting documentation from code into HTML files). The second part explores the use of Java to implement three-tier architectured systems. By providing support for security, networking, and threads as part of the language specification, and by offering complete portability through its virtual machine, Java is the ideal language for building applications whose objects are distributed on a network. Both major distributed object protocols, Common Object Request Broker Architecture (CORBA) and Java's Remote Method Invocation (RMI), will be surveyed. Programming exercises will be based on RMI.

Back to top of page.

CSCI E-162 Advanced Topics in Java and Distributed Computing
4 units. Graduate credit $1,250. Prerequisite(s): a good working knowledge of the Java programming language, including knowledge of basic Java class libraries and practical experience with several large Java or C++ projects.

Fall term (11683) : Jon Christensen, PhD, Chief Technical Officer, Painted Word, Inc. Monday, 7:35-9:35 pm. Science Center B-09. Optional sections Tuesday, 6:30-7:30 pm. Note: this course begins Monday, Sept. 27.

This course will examine various distributed architectures for designing n-tier and distributed systems. The course will examine a number of topics covering various aspects of n-tier Java systems including distributed architectures (message passing, RMI, CORBA), directory services, persistence, and security. The role of middleware and application servers will also be examined, including an examination of the Enterprise JavaBeans framework. Students will work in small teams to complete software projects utilizing the concepts discussed in lecture.

Back to top of page.
Spring term (21510) : James Farley, MS, Head of Technology Development, Harvard Business School. Thursday, 7:35-9:35 pm. Maxwell Dworkin Building, 33 Oxford Street, Room G115. Sections to be arranged.

An advanced course on distributed computing in the Java environment, intended to give the student in-depth experience with the tools available for building enterprise systems, and a foundation for matching these tools to a given application. Course consists of three major modules: distributed computing tools, including RMI, CORBA, EJB, and servlets; design patterns for distributed computing; and representative applications.

Back to top of page.

CSCI E-164 Distributed Object Computing with Java and CORBA (11631)
William B. Robinson, PhD, Lecturer in Extension, Harvard University and Senior Principal Technical Staff Member, Advanced Systems Lab, GTE.
4 units. Graduate credit $1,250. Tuesday, 7:35-9:35 pm. Emerson Hall 210. Sections to be arranged. Prerequisite(s): CSCI E-119 and proficiency in Java. Fall term.

This course will cover fundamental concepts of distributed object computing and their implementation in the Common Object Request Broker Architecture (CORBA), an industry standard for distributed object computing. Topics to be covered include the CORBA reference model, CORBA IDL, and common object services. The course will also provide comparisons to two other distributed object frameworks, Java's Remote Method Invocation (RMI) and the Distributed Component Object Model (DCOM). All programming assignments will be done in Java.

Back to top of page.

CSCI E-207 Theory of Computation and Its Applications (11323)
Joseph W. Marks, PhD, Lecturer in Extension, Harvard University and Research Scientist, Mitsubishi Electric Research Laboratory.
4 units. Noncredit $950, graduate credit $1,250. Tuesday, 7:35-9:35 pm. Science Center 102B. Sections to be arranged. Prerequisite(s): CSCI E-119 and MATH E-104 or equivalents. Fall term.

Course also available on the Internet

The fundamental concepts of the theory of automata, formal languages, computability, and computational complexity, and their relevance to the practice of computation. Practical applications include the parsing of natural and artificial languages, generative mechanisms in computer graphics, and identifying and coping with computationally hard problems. Homework assignments will include some programming.

Back to top of page.

CSCI E-215 UNIX Systems Programming (20034)
Bruce Molay, AB, Lecturer in Extension, Harvard University.
4 units. Noncredit $950, graduate credit $1,250. Monday, 7:35-9:35 pm. Science Center A. Optional sections to be arranged. Prerequisite(s): solid knowledge of C or C++ and a data structures course such as CSCI E-119; some experience using UNIX helpful. Spring term.

Course also available on the Internet

An introduction to the fundamental structure and services of the UNIX operating system. The course combines theory with programming at the system call level. Topics include files and directories, device control, terminal handling, processes and threads, signals, pipes, and sockets. Examples and exercises include directory management utilities, a shell, and an internet database client.

Back to top of page.

CSCI E-218 Programming COM+, COM, ActiveX, and OLE (20483)
David S. Platt, ME, President, Rolling Thunder Computing.
4 units. Graduate credit $1,250. Thursday, 7:35-9:35 pm. Science Center E. Optional sections to be arranged. Prerequisite(s): at least one year full-time experience programming in Windows via both API and MFC. Reasonable command of the C++ language is also required. See http://www.rollthunder.com for a complete syllabus and discussion of prerequisites. Spring term.

This course covers writing and using software components that implement the COM+ and COM standards for binary software reusability. Covered topics include introduction to COM, custom COM interfaces, ActiveX controls, automation, type libraries, threading, DCOM, monikers, and the ATL. Weekly programming assignments and extensive term project required. Students are urged to have their own Windows development environments.

Back to top of page.

CSCI E-220 Artificial Intelligence (11420)
David Albert, MS.
4 units. Graduate credit $1,250. Tuesday, 5:30-7:30 pm. Science Center 110. Sections to be arranged. Prerequisite(s): CSCI E-50b. Fall term.

Artificial Intelligence (AI) concerns the development of computer systems that appear to behave with some degree of human intelligence. This survey course covers the major topics in AI: search techniques, natural language understanding, knowledge representation, theorem proving, and computer vision. Planning, learning, and expert systems will be included if time permits. The LISP programming language will be introduced and used for the programming assignments. No prior experience with LISP is assumed.

Back to top of page.

CSCI E-225 Object-Oriented Programming in C++ (21381)
Kenneth J. Basye, PhD, Research Engineer, Dragon Systems, Inc.
4 units. Graduate credit $1,250. Wednesday, 7:35-9:35 pm. Harvard Hall 103. Sections to be arranged. Prerequisite(s): a working knowledge of C, including structures and pointers, is assumed; substantial experience in C is preferred. Spring term.

This course is designed to enable C programmers to become proficient in C++. Topics include class definitions, overloading functions and operators, friend functions, nested classes, single and multiple inheritance, virtual functions and abstract classes, templates, and exceptions. Useful applications such as iterators, smart pointers, and reference counting also will be discussed.

Back to top of page.

CSCI E-229 Practical User Interface Design (11418)
Timothy Shea, MS, President, Vivid Interface.
4 units. Graduate credit $1,250. Tuesday, 7:35-9:35 pm. 53a Church Street 2. Optional sections to be arranged. Prerequisite(s): familiarity with a user interface prototyping tool. Limited enrollment. Fall term.

This course teaches practical techniques for effective user interface (UI) design with emphasis on web and software design. Topics include user/task analysis, requirements, conceptual models, rapid prototyping techniques and tools, design strategies, visual design, usability testing, and working effectively with real-world development teams. The course combines theory with practical exercises in which students build, test, and refine working software prototypes. Brief tutorials will be given in paper prototyping, Microsoft Visual Basic, and Microsoft FrontPage. Students will be expected to use these tools or their equivalents in completing class projects.

Back to top of page.

CSCI E-234 Introduction to Computer Graphics (11692)
Hanspeter Pfister, PhD, Research Scientist, Mitsubishi Electric Research Laboratory.
4 units. Graduate credit $1,250. Monday, 7:35-9:35 pm. Maxwell Dworkin Building, 33 Oxford Street, Room G115. Sections to be arranged. Prerequisite(s): some familiarity with linear algebra and experience with a programming language such as C or Pascal. Fall term.

Note: this course begins Monday, Sept. 27.

This course is an introduction to three-dimensional computer graphics. We will discuss data structures and algorithms that are useful for presenting data visually on a computer. This is a programming class with the goal of providing students with sufficient background to write computer-graphics applications. Topics covered will include ray tracing, projective rendering, scientific visualization, object representations and fractals, and alternative rendering approaches.

Back to top of page.

CSCI E-247 Object Paradigms: Design Patterns, C++, and Java (21095)
William B. Robinson, PhD, Lecturer in Extension, Harvard University and Senior Principal Technical Staff Member, Advanced Systems Lab, GTE.
4 units. Graduate credit $1,250. Tuesday, 7:35-9:35 pm. Emerson Hall 108. Sections to be arranged. Prerequisite(s): CSCI E-119 and proficiency in Java and C++. Spring term.

Object-oriented languages enable reuse of objects through class libraries distributed at the source or the binary level. Higher-level design patterns enable reuse of designs for structuring object systems. In this course, students will learn about creational, structural, and behavioral design patterns, and techniques for implementing these patterns in Java and C++. All programming assignments will be done in Java.

Back to top of page.

CSCI E-253 Introduction to Database Systems and Client/Server Computing (10044)
Theodore Pappadopoulos, AB, University Datawarehouse Manager, University Information Systems, Harvard University.
4 units. Graduate credit $1,250. Thursday, 5:30-7:30 pm. Science Center A. Optional sections to be arranged. Prerequisite(s): coursework or equivalent experience in computer programming such as UNIX, C, and data structures. No prior experience with SQL, relational databases, or application development tools is required. Fall term.

Client/server computing promises the advantages of workstation productivity and ease of use together with the power and sophistication of relational database servers. The course will begin with a discussion of database design and the relational database model. As a practical example of a relational database management system, students will build, populate, query, and write transactions for a relational database using SQL and Oracle. The course will then focus on application development tools used to build client/server applications featuring a graphical user interface. Other application development tools will be used to demonstrate web application development. Students will be expected to build a prototype client/server application as a final project. This course is an introduction to the full range of topics needed to build today's client/server applications and is intended for data-processing professionals.

Back to top of page.

CSCI E-254 Oracle8: SQL*Plus and PL/SQL Coding (11357)
Katherine L. Urbanowicz, MS, Partner, Cardinal Group International, Inc.
4 units. Graduate credit $1,550. Wednesday, 5:30-7:30 pm. Sever Hall 102. Sections Wednesday, 7:35-9:35 pm. Prerequisite(s): CSCI E-253; previous programming experience in at least one higher-level language (Pascal, C, C++, Java); familiarity with building Entity-Relationship Models. Fall term.

An in-depth course teaching data access and manipulation within an Oracle object relational database utilizing a structured query language (SQL). Students are taught the concepts of SQL and will learn both Oracle's proprietary SQL*Plus interface and its procedural language, PL/SQL. Data manipulation utilizing structured query protocols will be covered exhaustively. This course culminates in a group project in which the SQL concepts taught are implemented in procedures, functions, and triggers written in PL/SQL. This course is for application developers and system integrators and expects students to have a working knowledge of Entity-Relationship Diagrams, normalization, and integrity constraints.

Back to top of page.

CSCI E-256 Oracle Database Administration (21245)
Patrick McGowan, BSEE, Senior Database Administrator, University Information Systems, Harvard University.
4 units. Graduate credit $1,550. Wednesday, 5:30-7:30 pm. Harvard Hall 202. Sections to be arranged. Prerequisite(s): an understanding of the principles of a relational database model; a working knowledge of SQL; CSCI E-253, CSCI E-254 or equivalent. Limited enrollment. Spring term.

Students in this course will be exposed to the internal structure and organization of an Oracle database. The course will present a structured approach to planning, building, tuning, and monitoring an Oracle8 database. Students will create Oracle databases, tablespaces, user accounts, views, indexes, and other objects necessary to support an application.

Back to top of page.

CSCI E-287 Computer Architecture (21513)
James L. Frankel, PhD, Lecturer in Extension, Harvard University and Consulting Scientist, Frankel and Associates, Inc.
4 units. Graduate credit $1,250. Tuesday, 7:35-9:35 pm. Harvard Hall 102. Sections to be arranged. Prerequisite(s): CSCI E-119 and CSCI E-123 or equivalents. Spring term.

A study of the fundamental concepts in the design and organization of modern computer systems. Topics include instruction set design, processor design, memory system, interrupts, microcoding, and various performance-enhancing parallel techniques. Study of existing architectures using CISC, RISC, vector, data parallel, and VLIW designs. An extensive lab project will be required of all students.

Back to top of page.

Related Courses

  • CREA E-130 Desktop Publishing
  • CREA E-132 Writing for the Internet
  • CSS 103a Designing Effective Websites: A Marketing Perspective
  • CSS 118 Information Systems Management
  • CSS 400 Microcomputers and Information Technologies
  • CSS 403 Desktop Applications for Managers
  • CSS 405 Gaining Competitive Advantage through Information Technology
  • CSS 407 Doing Business in the Internet Economy
  • CSS 408 Spreadsheet Models for Managers
  • CSS 412 Information Management for Managers
  • CSS 540 Electronic Communication as a Management Tool
  • EDUC E-121 Technologies of Education: From the Book to the Computer
  • EXPO E-510 Editing Technical Prose
  • HUMA E-105/W Survey of Publishing: From Text to Hypertext
  • LSTU E-120 Cyberlaw and Society
  • MATH E-104 Discrete Mathematics with Computer Science Applications
  • MUSE E-130 Information Technology for Museums and Collections
  • PHYS E-123a Laboratory Electronics: Analog Circuit Design
  • STAT E-50 Introduction to Statistics
Top of page

Previous | Next

 

Copyright © 1999 Harvard Extension School. All rights reserved.
Comments. Last modified Wed, June 7, 2000
[spacer] [spacer] [spacer]