In Fall 2016 I taught CM 315 Interactive Applications in the Creative Media department of the West Oahu university campus. The class was tailored to students with little to no prior programming experience. The class students successfully created two individual projects. From the class syllabus:
In this class we will learn about the process of designing, prototyping, user testing and creating interactive applications for mobile devices. We will learn to create applications using the CoronaSDK and Lua language, and will complete two projects throughout the course - an interactive story application and a game application.
Each class included a section on interactive applications' design and a section on Lua programming. Slides are available here (all materials written by me).
I've been a teaching assistant between 2014 and 2018. Below is the list of courses I've TAed for: (descriptions taken from course catalog)
Spring 2018
- ICS 313 Programming Language Theory - Syntax, semantics, control structures, variable binding and scopes, data and control abstractions. Programming in functional (LISP) and logic (Prolog) programming styles.
- ICS 361 Introduction to Artificial Intelligence Programming - Introduction to the theory of Artificial Intelligence and the practical application of AI techniques in Functional (Common LISP and/or Scheme) and Logic (Prolog) programming languages.
Spring 2016, Fall 2016, Spring 2017, Fall 2017
- ICS 111 Introduction to Computer Science I - Overview of the fundamentals of computer science emphasizing problem solving, algorithm development, implementation, and debugging/testing using an object-oriented programming language.
Fall 2015
- ICS 426 Computer System Security - Information flow, confinement, information assurance, malicious programs, vulnerability analysis, network security, writing secure programs.
Spring 2015
- ICS 425 Computer Security and Ethics - Theoretical results, security policy, encryption, key management, digital signatures, certificates, passwords. Ethics: privacy, computer crime, professional ethics. Effects of the computer revolution on society.
- ICS 485 Video Game Design and Development - Students will team design, build, and demonstrate video games or related interactive entertainment environments and applications. Topics will include emerging computer science techniques relevant to the development of these types of environments.
Fall 2014
- ICS 461 Artificial Intelligence - Survey of artificial intelligence: natural language processing, vision and robotics, expert systems. Emphasis on fundamental concepts: search, planning, and problem solving, logic, knowledge representation.
- ICS 465 Introduction to Hypermedia - Basic issues of interactive access to information in various formats on computers. Available hardware and software: editing, integration, programming. Implementation of a sample information system.