بِسْمِ اللَّهِ الرَّحْمَنِ الرَّحِيم

In the Name of Allah, the Most Gracious, the Most Merciful


Welcome to My Classroom

“Seek knowledge from the cradle to the grave.” – Prophet Muhammad (S.A.W)

“And say: My Lord, increase me in knowledge.” (Qur’an 20:114)


Hello Students, This is my personal learning space where I have curated a collection of high-quality resources to support your studies. Most of the materials are adapted from leading university courses, with proper credit given to the original authors.

My goal is to provide you with the best possible lectures and guidance to help you excel in your learning journey. If you encounter any concepts that are unclear, please do not hesitate to reach out! I am always here to help you.

~ Md Habibul Basar Faruq


Let us learn, explore, and grow together with sincerity and excellence.


Parallel and Distributed Processing

Course Information

  • Batch: 72th
  • Course Code: CSE-411
  • Credits: 03
  • Course Teacher: Md Habibul Basar Faruq
  • Email: mh.faruq06@gmail.com
  • Google Classroom: Join

Course Description

This course introduces the principles and practices of parallel and distributed computing. Topics include models of parallelism, architectures, communication and synchronization, performance metrics, parallel algorithms, and distributed system fundamentals. Students will gain hands-on experience with frameworks such as MPI, OpenMP, Hadoop, and Spark, applying them to real-world problem solving.


Weekly Topics and Resources

  • Week 1: Introduction to Parallel and Distributed Systems
    Motivation, real-world applications, system architectures. | Lecture slide 01

Computer Graphics Lab

Course Information

  • Semester: 8th
  • Course Code: CSE-4208
  • Credits: 01
  • Course Teacher: Md Habibul Basar Faruq
  • Email: mh.faruq06@gmail.com

Lab Objectives

  • Implement and visualize basic computer graphics algorithms.
  • Apply 2D and 3D transformations and projection techniques.
  • Explore clipping, shading, texture mapping, and animation.
  • Gain hands-on experience with OpenGL/GLUT for interactive graphics.
  • Develop simple real-time graphics applications.

Expected Outcomes

By the end of this lab, students will be able to:

  • Write and execute programs to draw primitives and apply transformations.
  • Implement algorithms for clipping, filling, and hidden-surface removal.
  • Create interactive applications using OpenGL.
  • Design mini projects with real-time rendering and animation.

Weekly Activities

  • Week 1: Introduction to Graphics Programming

Computer Graphics

Course Information

  • Semester: 8th
  • Course Code: 07-0613-CG802
  • Credits: 03
  • Course Teacher: Md Habibul Basar Faruq
  • Email: mh.faruq06@gmail.com

Course Description

This course introduces the principles and techniques of computer graphics. Topics include the graphics pipeline, 2D and 3D transformations, viewing and projections, rasterization, shading, texture mapping, ray tracing, geometric modeling, animation, and advanced rendering. Students will learn the mathematical foundations and apply them in graphical application design.


Course Outcomes

Upon successful completion of this course, students will be able to:

Computer Algorithms

Course Information

  • Semester: 4th
  • Course Code: 07-0613-CA401
  • Credits: 03
  • Course Teacher: Md Habibul Basar Faruq
  • Email: mh.faruq06@gmail.com

Course Description

This course introduces the design, analysis, and implementation of algorithms. Students will learn fundamental algorithmic techniques such as divide-and-conquer, greedy strategies, dynamic programming, and graph algorithms. The course emphasizes efficiency analysis using Big-O notation and explores NP-completeness, approximation, and randomized algorithms.


Course Outcomes

Upon successful completion of this course, students will be able to:

Computer Algorithm Lab

Course Information:

  • Semester: 4th
  • Course Code: 07-0613-CALab406
  • Credits: 01
  • Course Teacher: Md Habibul Basar Faruq
  • Email: mh.faruq06@gmail.com

Lab Objectives

Upon completion of this lab, students will be able to:

  • Implement fundamental data structures (arrays, linked lists, stacks, queues, trees, graphs)
  • Develop and analyze sorting/searching algorithms (selection, insertion, merge, quick, radix)
  • Implement recursion-based solutions (Fibonacci, factorial, series summations)
  • Apply divide-and-conquer, greedy, and dynamic programming techniques (Knapsack, matrix chain multiplication)
  • Explore backtracking (N‑Queens, subset sum) and graph algorithms (DFS, BFS, Dijkstra)

Weekly Lab Activities

  • Week 1: Introduction

Artificial Intelligence Lab

Course Information

  • Semester: 6th
  • Course Code: 07-0619-AI Lab609
  • Credits: 01
  • Course Teacher: Md Habibul Basar Faruq
  • Email: mh.faruq06@gmail.com

Lab Objectives

Upon completion of this lab, students will be able to:

  • Implement fundamental AI algorithms including search, CSP, and Markov Decision Processes
  • Develop reinforcement learning agents using Q-learning and policy iteration
  • Build and train simple machine learning models including classifiers and regressors
  • Construct and train neural networks using backpropagation
  • Apply probabilistic inference in Bayesian networks
  • Develop AI applications for real-world problems and game environments
  • Use AI programming tools and libraries such as Python, TensorFlow, and PyTorch

Weekly Lab Activities

  • Week 1: Lab Setup and Environment

Artificial Intelligence

Course Information

  • Semester: 6th
  • Course Code: 07-0619-AI603
  • Credits: 03
  • Course Teacher: Md Habibul Basar Faruq
  • Email: mh.faruq06@gmail.com

Course Description

This course provides a comprehensive introduction to Artificial Intelligence, covering foundational concepts, algorithms, and applications. Students will explore problem solving, knowledge representation, reasoning, learning, and perception, integrating theory with hands-on programming assignments.


Weekly Topics and Resources

Markup and Scripting Language Lab

Course Information

  • Semester:
  • Course Code:
  • Credits:
  • Course Teacher: Md Habibul Basar Faruq
  • Email: mh.faruq06@gmail.com

Course Description

This lab course provides hands-on experience in web technologies, focusing on HTML, CSS, JavaScript, and the Django web framework.
Students will learn to design, style, and script web pages, and later integrate them into dynamic, database-driven web applications using Django.


Weekly Lab Topics and Tasks

  • Week 1: Introduction to Markup and Scripting
    Understand markup vs scripting and basic HTML structure.
    Task: Create a simple HTML5 webpage using headings, paragraphs, images, and links.