Abid Mahbub Bari
Computer Science and Engineering Student at BUET
I like understanding how things work, building them, and occasionally breaking them in the process.
⸻
About Me
I’m a Computer Science and Engineering student at Bangladesh University of Engineering and Technology.
Most of my learning comes from actually building things and solving problems. I enjoy algorithms and problem solving, but I also like working on projects where the theory turns into something tangible.
Lately, I’ve been spending a lot of time with signal processing, ECG analysis, computer architecture, software design, databases, and technical writing, while continuing to strengthen my foundations in data structures and algorithms.
I’m interested in becoming a well rounded software engineer with strong fundamentals, and I’m trying to get there one project at a time.
⸻
What I’m Interested In
Algorithms and Problem Solving
Data structures, graph algorithms, dynamic programming, shortest paths, sorting, and competitive programming.
Software Engineering
Object oriented programming, design patterns, backend development, databases, APIs, and application development.
Signal Processing
Fourier analysis, DFT, DTFT, FFT, filtering, denoising, and biomedical signals.
Computer Systems
Computer architecture, low level programming, and understanding what happens underneath the software.
Technical Writing
Learning how to structure and typeset technical documents and research papers using LaTeX.
⸻
My Toolkit
Languages
Frameworks and Technologies
Databases
Tools
⸻
Things I’ve Been Building
Signal Processing with Python
A collection of implementations and experiments involving digital signal processing and linear systems.
I’ve been working with concepts such as DFT, DTFT, FFT, filtering, frequency domain analysis, and signal reconstruction.
Python · NumPy · Signal Processing
Explore Signals and Linear Systems Using Python
⸻
Pan Tompkins QRS Detection
An implementation of the Pan Tompkins algorithm for detecting QRS complexes in ECG signals.
This project is helping me understand how different signal processing techniques can be combined into a practical ECG analysis pipeline.
Python · ECG · Digital Signal Processing · QRS Detection
Explore Pan Tompkins QRS Detection
⸻
Learning LaTeX Through Research Papers
A repository I created while learning LaTeX and exploring how to write and format research papers.
It contains examples and experiments with document structure, equations, figures, tables, references, and other LaTeX features.
LaTeX · Technical Writing · Research Papers
Explore the LaTeX Repository
⸻
Incident Reporting System
A full stack incident reporting application developed as a database and software engineering project.
It involved designing the database, working with SQL, developing backend APIs, and connecting the application to a frontend.
React · Node.js · Express · SQL · PostgreSQL · Oracle · REST APIs
Explore Incident Reporting System
⸻
Computer Architecture
Coursework and assignments from learning computer architecture and understanding the relationship between software and hardware.
Computer Architecture · Low Level Programming · Systems
Explore Computer Architecture
⸻
Design Pattern Practice
Implementations and experiments with common software design patterns while learning object oriented programming and software design.
Java · Object Oriented Programming · Design Patterns
Explore Design Pattern Practice
⸻
Student Productivity Manager
A JavaFX application built around student productivity, including flashcards, tasks, calendar functionality, and other study related features.
Java · JavaFX · CSS · Jackson
Explore Student Productivity Manager
⸻
Algorithms
A significant part of my learning has been solving problems and implementing algorithms rather than only reading about them.
Some of the areas I’ve worked through include:
Data Structures ↓ Sorting and Searching ↓ Trees and Graphs ↓ BFS and DFS ↓ Shortest Path Algorithms ↓ Minimum Spanning Trees ↓ Dynamic Programming ↓ Advanced Graph Algorithms
I primarily use C++ for algorithmic problem solving and keep repositories for practicing data structures, graph algorithms, sorting, and other topics.
Data Structures Practice
Graph Algorithms Practice
Sorting Practice
⸻
Some Older Projects
Not everything on my GitHub represents what I’m currently focused on. Some repositories are from earlier stages of my university life, but I keep them because they show how my interests and skills have developed over time.
Tetris
A Tetris clone built as a term project using C++ and iGraphics with OpenGL.
View Tetris
C Programming Coursework
Course assignments and programming problems from my earlier coursework.
View C Programming Work
⸻
How I Like to Learn
I learn best when I can take an idea and actually make something with it.
Usually, it looks something like this:
Learn the idea ↓ Implement it ↓ Try it on a real problem ↓ Get something wrong ↓ Figure out why ↓ Build something better
A lot of the repositories here are simply records of that process.
⸻
GitHub Stats
⸻
Let’s Connect
If you’re interested in software engineering, algorithms, signal processing, systems, databases, or interesting technical projects, feel free to reach out.
Keep learning. Keep building.