Md Saidul Hoque Anik
  • About
  • Research
  • News
  • Teaching
  • More
    • Leadership
    • Software
    • Publications

On this page

  • Guest Lecture at Texas A&M
  • Course Contents

Teaching

I am currently on sabbatical from the Department of Computer Science and Engineering at United International University (UIU)1, Bangladesh, where I served as a tenured faculty member. Before my sabbatical, I taught advanced computer science topics, including Software Engineering, Computer Architecture, and Web Programming to senior undergraduate students.

1 UIU: Spring 2020 — Current

/UIU Project Show 2021. Serving as judge.

Previously, I was a tenured faculty at Military Institute of Science and Technology (MIST)2 University, where I began my academic career as an adjunct faculty member. At MIST, I focused on teaching core programming concepts to undergraduate students, delivering courses in Structured Programming, Object-Oriented Programming, and Data Structures & Algorithms for nearly three years. In addition to my teaching responsibilities, I have actively contributed to various administrative roles, including serving as Postgraduate Coordinator, Secretary of the Syllabus Reform Committee, and overseeing departmental software development projects.

2 MIST: Spring 2017 — Fall 2019

/MIST Inter-University Programming Contest 2019. Serving as technical coordinator.

Guest Lecture at Texas A&M

I delivered a guest lecture at Texas A&M University as part of the Supercomputing graduate course (CSCE-654) in Fall 2025. Over two sessions, I introduced the concept of Data-Distributed Parallel (DDP) techniques for training models on large datasets, providing hands-on demonstrations using PyTorch.

In the first session, I began by explaining how to perform interprocess communication using the PyTorch Distributed Package across multiple processes and demonstrate the ALL_REDUCE operation. We then implemented DDP from scratch to train a simple MNIST dataset using a multi-layer perceptron (MLP). I also discussed strategies for adjusting the learning rate to ensure that DDP produces a consistent loss curve.

In the second session, the focus shifted to multinode DDP training. I demonstrated how to use HDF5 files to load portions of the dataset into a distributed dataloader.

The session materials are available in this GitHub repository.

Course Contents

Below are some of the courses I’ve taught over five years. I primarily used learning management systems to share course content with my students. This is a link to a sample page from a C programming courses I taught at MIST.

  • Level-4
  • Level-3
  • Level-2
  • Level-1

CSE-465 Web Programming

Institute: UIU

HTML5 Tags, CSS Selectors, JavaScript (Basic Syntax, Higher Order Array Functions, DOM Traversal), Django (Routing, Templating, ORM, Authentication, Form Handling), Client Side Rendering, VueJS, Progessive Web Application (PWA)

CSE-469 Project Management

Institute: UIU

Process Models (Waterfall, RUP, Iterative, Incremental, Agile, Scrum, Kanban, Extreme Programming), Vision and Design Document, Work Breakdown Structure (WBS), Delphie Estimation, Scheduling (Dependancy Network Graph, Gantt Chart), Review Documents

CSE-414 Computer Graphics Sessional

Institute: MIST

OpenGL 2D Animation, Mouse Interaction, Raster-based Pipeline

CSE-404 Artificial Intelligence Sessional

Institute: MIST

State Representation using Graph, Local Search, A* Search, Adversarial Search, Constraint Satisfaction Problem

CSE-322 Software Engineering Laboratory

Institute: UIU

REST API, CRUD Operations, Agile Methodology, Testing (Python Selenium, PyTest), Ajax (Fetch/XHR), Version Controlling (Git, GitHub), Markdown, Static Site Generator (MkDocs), SRS Writing

CSE-312 System Analysis and Design Laboratory

Institute: UIU

Benchmark Analysis, Feasibility Analysis, UML Diagrams (Use Case, Class Diagram, Dataflow Diagram), Agile Methodology (Jira)

CSE-313 Computer Architecture

Institute: UIU

Basic Concepts, MIPS, Datapath, Caching, Multiplication Algorithms

CSE-304 Compiler Sessional

Institute: MIST

Lex, Bison, Yacc

CSE-226 Assembly Language Programming

Institute: UIU

Introduction to 8086 emulator, Registers, Flags, Flow Control, Loop, Shift, Rotate, Nested Loop, Procedure, Stack, Multiple, Division, Array, String

CSE-223 Thoery of Computation

Institute: UIU

Basic concepts, DFA, NFA, Epsilon Transition, DFA Equivalence of NFA, Regular Expression, Context Free Grammar, Parse Trees, Ambiguity in Grammar, Pushdown Automata, Equivalence of PDA and CFG, Deterministic PDA, Normal Forms, Turing Machines

CSE-222 Database Management System Laboratory

Institute: UIU

MySQL Queries (Basic, JOIN, Aggregation, Subqueries), PHP Implementations

CSE-215 Data Structures and Algorithms-II

Institute: MIST

Hashing, HashSet, Binary Search Tree, Trie, Balanced Search Tree (Skip List, AVL Tree)

CSE-205 Object Oriented Programming Language (Part-B)

Institute: MIST

Inheritance, Multiple Inheritance, Constructor & Destructor, Virtual Functions, Runtime Polymorphism, Abstract Class, Diamond Problem, Virtual Base Class, Operator Overloading, Functors (Function Objects), Conversion Function, Overloading subscript, new, and delete operator

CSE-203 Data Structures and Algorithms-I

Institute: MIST

Big-O Notation, Linked List, Stack, Queue, Binary Search, Dequeue, Double Linked List, Graph, Tree

CSE-1116 Object Oriented Programming Sessional

Institute: UIU, MIST

Java Basic Syntax, Object Oriented Concepts (Inheritance, Abstraction, Interface, Polymorphism), Access Modifier, String, File I/O, Exception Handling, Concurrency, UI Design with Swing

CSE-1110 Introduction to CS

Institute: UIU

Introduction to Computer, Block-based Programming Language (Scratch), Memory and Storage, Binary Numbers, Introduction to C Programming Language (Variable Declaration, Conditions, For Loop)

CSE-105 Structured Programming Language (Part-B)

Institute: MIST

Recursion, Arrays & Strings, 2D Array & Pointers, Structures, Unions, Padding, Enum, File I/O, Dynamic Memory Allocation, Bitwise Manipulation, Function Pointers