Teaching
Teaching Activities at UT
Assistant Instructor, Computer Science 105: PHP/SQL, Spring 2014 & Fall 2014 & Fall 2015 & Spring 2016.
A Web application development short course, covering PHP, SQL, HTML, CSS, and JavaScript. Design and implement Web applications on top of the common “LAMP”-style Web app platform (Linux-Apache httpd-MySQL-PHP).
- Syllabus (Spring 2016) (PDF format, 124 kB)
- Syllabus (Fall 2015) (PDF format, 121 kB)
- Syllabus (Fall 2014) (PDF format, 121 kB)
- Syllabus (Spring 2014) (PDF format, 99 kB)
- Academic Integrity presentation (PDF format, 257 kB)
Graduate Teaching Assistant, Computer Science 386L: Programming Languages, Spring 2015.
Topics include formal syntax representations, program correctness, typing, and data abstraction. Features and problems in languages that allow parallelism. Exploration of different programming styles, such as imperative, functional, logic, data flow, and object-oriented programming.
- Structural Induction in Programming Language Semantics (PDF format, 147 kB)
Graduate Teaching Assistant, Computer Science 347: Data Management, Spring & Summer 2013.
Concepts of database design and database system implementation. Data models, query processing, database design theory, crash recovery, concurrent control, and distributed databases.
- An Overview of the Mechanisms of Oracle RDBMS Transactions and Logs (PDF format, 121 kB)
Graduate Teaching Assistant, Computer Science 380D: Distributed Computing I, Spring 2013.
Models of distributed systems; language issues, proving properties of distributed systems; time, clocks, partial ordering of events; deadlock and termination detection; diffusing computations; computing in hostile environments; distributed resource management.
- Syllabus (PDF format, 76 kB)
Graduate Teaching Assistant, Computer Science 314: Data Structures, Fall 2012 & Summer 2014.
Second part of a two-part sequence in Java programming. Introduction to specifications, simple unit testing, and debugging; building and using canonical data structures; algorithm analysis and reasoning techniques such as assertions and invariants.
- Department of Computer Science Teaching Assistant Excellence Award — 2nd place
Teaching Development Activities at UT
Computer Science 398T: Supervised Teaching in Computer Science [Seminar], Fall 2008.
Attended UT short courses in pedagogy:
-
Leading Discussions — Designing Effective Discussions, Promoting Active Learning , Assessing Classroom Discussion
-
Lecturing — Effective Public Speaking Techniques, Designing Effective Lectures for Learning, Interactive Techniques for Large Classes
-
Teaching Research Skills — Research Assignments into Assignment Design, Web Savvy Students, Preventing and Detecting Plagiarism
-
Understanding Your Students — Helping Your Students Become More Effective Learners, Learning Styles and Implications for Teaching, Motivating Students to Learn
Previous Teaching Activities
Taught computing professionals on a variety of subjects, including:
- Web systems development (processes, HCI aspects, management, etc.)
- Object-oriented analysis, design, modeling, and development
- I.T. project management
- Requirements modeling in use cases
- Scenario-based design, implementation, and testing
- Numerous specific technologies (C++, Java, Delphi, Rose, WebObjects, etc.)
Tutored undergraduate students in computer science
FAA-certified flight instructor
Formally developed several courses, for example:
- Multimedia and Internet Life Cycle (MILC)
- Instrument–Airplane (SEL)