Database
Programming in Practice @ K-DAI, KMITL
Instructor
Semester Offered:
Spring 2024,
Spring 2025,
Spring 2026
Teach and develop the course. Topics include data persistence, database management systems, data models
(focused on the Codd's Relational model), query languages (focused on SQL),
data organization, storage model (NSM, DSM, PAX), database indexes, query engine, and concurrency control.
DuckDB is used to demonstrate the concepts.
Foundation of
Programming @ K-DAI, KMITL
Instructor
Semester Offered:
Summer 2024,
Fall 2025
Teach and develop the course. Topics include problem solving, algorithmic thinking, abstractions,
generalization,
basic programming, control flow, programming practices (e.g., code reuse, external libraries, code
testing). Python is used to demonstrate the concepts.
Distributed Data Storage (Fall 2024) @ CMKL University
Instructor
Teach and develop the course. Topics include multi-disk systems (RAID), internal consistency mechanism,
caching, distributed system basics, and distributed file systems (multi-client, multi-server).
Parallel Computing (Fall 2024) @ CMKL University
Instructor
Teach and develop the course. Topics include performance, parallelism basics, modern computer architecture
(pipelining, superscalar, out-of-order processing, multicore, GPU), instruction-level parallelism
(unrolling, separate
accumulator, vectorization), and shared-memory parallelism (memory consistency, cache coherency). SIMD,
POSIX thread (pthread), and OpenMP are
used to
demonstrate the concepts.
Storage and File System Fundamentals (Fall 2024) @ CMKL University
Instructor
Teach and develop the course. Topics include device management, persistent storage (HDD, NAND Flash SSD),
file
system design and implementation
techniques.
Database Management (Fall 2024) @ SUIC
Instructor
Teach and develop the course. Topics include SQL (single-table, multiple-table, DDL, constraints) and
logical database design. MySQL and DuckDB are used to demonstrate the concepts.
Special Topic
in Computer Science 2: Computer Systems (Fall
2024) @ Computer Science, KMITL
Co-Instructor
Teach and develop the course. Topics include data abstraction, machine language, memory hierarchy, code
optimization, virtual memory, dynamic memory allocation, network programming, concurrent programming, and
thread-level parallelism.