|
Teaching
UCLA Course Descriptions: Computer Science 136 - Computer Security: Students perform real-world securty analysis using the DETER testbed. Students use existing knowledge of operating systems, computer networks, and UNIX programming to perform practical labs to analyze and fix insecure systems. Topics include filesystem permissions, firewalls, buffer overflows, pathname attacks, SQL injection, intrusion detection, man-in-the-middle attacks, and replay attacks.
Engineering 183 - Engineering and Society: This focuses on professional and ethical considerations in the practice of engineering; the impact of technology on society and on the development of moral and ethical values; contemporary environmental, biological, legal and other issues created by new technologies. This course also satsifies the writing requirement for the school of engineering. Students learn technical writing skills through teaching assistant led discussion sections and a series of technical writing assignments.
Engineering 111 - Introduction to Finance and Marketing for Engineers: The objective of this course is to introduce the fundamentals of the multidisciplinary fields of engineering, finance and marketing within the Technology Management paradigm. The course covers those most critical components of the finance and marketing research, teaching and practice as they impact the management of technology commercialization. Students will learn internal (within the firm) and external (in the marketplace) marketing and financing of high-technology innovation. Concepts such as present value, future value, discounted cash-flow, internal rate of return, return on assets, return on equity, return on investment, interest rates, cost of capital, the four Ps – product, price, positioning and promotion, as well the proper use of market research, segmentation and forecasting in the management of technological innovation. Students learn the language of business, accounting, to a level such that they can discuss their innovation’s impacts on financial statements with senior executives and other sophisticated business decision makers. (From course syllabus)
Engineering 110 - : The objectives of this course are to introduce engineers and scientists to the fundamental knowledge and principles of economics as they apply to Technology Management in the modern business environment; this includes an understanding of the language of accounting, finance and the law such that engineers can persuasively communicate their ideas to senior business leaders Students learn about the theory and the practice of Technology Management with special emphasis on life science and high technology firms. Firms from start-up size through Fortune 500 size firms will be analyzed, critiqued and discussed. Topics Include: Fundamental principles of micro (individual, firm, and industry) and macro (government, international) level economics as they relate to Technology Management; and how individuals, firms and governments impact the successful commercialization of high technology products and services within our legal system. (From course syllabus)
CS132 - Compiler Construction: This course builds on many prerequisite courses of formal language and automata theory and software development. This course focusing on the stage-based construction of a compiler, with input being a subset of Java and output being MIPS assembly. Each stage is completed as a course project whereby successful complete results in a complete compiler. Topics include LL and LALR parsing, type checking, semantic analysis, liveness analysis, object and memory layout, register allocation, and other topics of the instructor's choosing. More information on the MiniJava language and associate coursework suggested by Dr. Andrew Appel may be found here.
Computer Science 161 - Artificial Intelligence: Teaching Assistant, Winter 2008 quarter CS161 introduces students to a survey of artificial intelligence topics as well as the Lisp programming language. Topics include search algorithms, problem spaces, first order logic, expert systems, natural language processing, genetic algorithms, probability, decision trees and neural networks. Pro jects are designed to reinforce selected material with specific programming exercises.
CS111 Operating Systems Principles: CS111 presents an in-depth overview of many operating system fundamentals. Student pro jects include both application-level and kernel-level development. Topics include pro- cesses and scheduling, threads and synchronization, file systems, virtual memory, dis- tributed systems and security.
Washington University in St. Louis Course Descriptions: CS102: CS 102 builds on CS101's introduction to software systems as collections of communicating components. CS102 emphasizes more sophisticated uses of object-oriented concepts (inheritance, polymorphism, method overloading, and multiple inheritance of interfaces) and techniques for managing communication among software components. An introduction to packages, file I/O, parsing, graphical user interfaces, exception handling, threads, concurrency, synchronization, and network programming is provided. Algorithms and data structures are presented as needed to support discussion of these topics. Concepts and skills are mastered through software projects, many of which employ graphics to enhance conceptual understanding. Java, an object-oriented programming language, is the vehicle of exploration. (Taken from the Computer Science Department's catalog description page)
CS519 - Computer Vision (now 559): This course studies the theory and practice of extracting information from images and video. Topics will include the classical concepts of the geometry of image and video capture, creation of image and video mosaics, and techniques for creating descriptions of 3D objects and scenes. The course will also include an overview of current vision research topics, including video textures, non-Lambertian surface modelling, and multi-camera and catadioptic imaging systems. The course includes a final project, in which individual or small groups of students will define an image analysis task and implement and test it on real image data. (Taken from the Computer Science Department's catalog description page)
|