Teaching

In my current semester, I am teaching the following courses:

Theory of Computation

Course Code: CSE 0541 3107
Level: Undergraduate
Introduction to formal languages, automata theory, computability, and complexity theory. Topics include regular languages, context-free grammars, Turing machines, decidability, and computational complexity classes.

Discrete Mathematics

Course Code: CSE 0541 2101
Level: Undergraduate
Fundamental concepts in discrete mathematics essential for computer science, including logic, set theory, relations, functions, combinatorics, graph theory, and discrete probability.

Computer Architecture

Course Code: CSE 0611 3203
Level: Undergraduate
Design and organization of computer systems, covering instruction set architectures, processor design, memory hierarchy, I/O systems, and performance analysis.

Fundamentals of Computer Science and Engineering

Course Code: CSE 0613 1101
Level: Undergraduate
Introduction to fundamental concepts in computer science and engineering, including programming basics, problem-solving techniques, algorithms, and computational thinking.


Teaching Philosophy

I believe in fostering an interactive and engaging learning environment where students are encouraged to think critically and apply theoretical concepts to practical problems. My teaching approach emphasizes:


For course materials or inquiries about teaching opportunities, please feel free to anowarul.faruk@buft.edu.bd.