Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
Stephanie Weirich - Teaching
[go: Go Back, main page]

TEACHING EXPERIENCE


Courses at University of Pennsylvania
Programming Languages and Techniques I
CSE 120 - Undergraduate requirement
Spring 2007

This course is a fast-paced introduction to the fundamental concepts of programming, with Java as the main experimental vehicle.  Prior programming experience is assumed, although not necessarily in the Java language. The enrollment is about 60 students per year.
Software Foundations
CIS 500 - Graduate requirement
Fall 2004, Fall 2005

This course provides a solid foundation to the study of programming languages, through formalization and proof. It is required for all M.S. and Ph.D. students in Computer and Information Science. Its enrollment is about 70 students per year.

Principles of Programming Languages
CSE 340 - Undergraduate elective
Spring 2003, Spring 2004

An introduction for undergraduates to the study of programming language, through the design and implementation of a series of interpreters. This elective gets about 10 students a year.

Advanced Programming Languages
CIS 670/CIS 700 - Graduate seminar
Fall 2002, Fall 2003, Spring 2005, Spring 2006, Fall 2006

An advanced graduate seminar for Ph.D. students in programming languages. The topic changes from semester to semester, in Fall 2002 we covered parametric and ad hoc polymorphism. In Fall 2003, we covered advanced type systems, including logical relations, typed operational reasoning, dependent types, effects and regions, and module systems.  The attendance is around a lively 10 (most attendees are not registered for the course.).


Courses at Cornell University
Java Practicum
CS 212 - 1 Credit project course
Fall 2001 

A 1 credit project course required for CS majors, intended to be taken concurrently with CS211, Computers and Programming. During the Fall 2001 semester it had an enrollment of about 60 student. This project course introduces the student to the ways of software engineering using the Java programming language. The course requires the design and implementation of several large programs.

Semantics of Programming Language
CS 611 - 3 Credit, graduate course
Fall 1998 (Teaching Assistant)

A core graduate course covering the semantics of programming languages, including the principles of formal notation for describing computations, and tools for analyzing and proving properties of computations.

C++ Programming
CS 213 - 2 Credits (Pass/Fail)
co-taught with Tugkan Batu
Fall 1997

2 credit, pass/fail course, with an enrollment of about 50 students. This was a semester long C++ course for students who already knew how to program in C or Pascal. Tugkan and I collaborated to design this course; we alternated preparing and giving the lectures and preparation of the assignments, working together to develop the final project. 

A Taste of UNIX and C
CS 214 - 1 Credit (Pass/Fail), 4 weeks
Spring 1997

1 credit, pass/fail, 4 week course, with an enrollment of about 20 students. The lectures demonstrated various development tools in the UNIX operating system, and the course grade was determined by a small project written in the C programming language.


Stephanie Weirich
Last Modified :
July 19, 2007