I work with Python, AI, and automation, and I also spend a lot of time building and experimenting with 3D printers. I like figuring out how things work, making something useful, and improving it as I go.
I'm Muhammad As'ad Waseem. I'm a curious Python dev, Solution Engineer, AI Specialist, and 3D printing enthusiast. I spend a lot of time working with Python, trying out different ideas, and building tools that solve problems I run into. Sometimes that's an AI workflow, sometimes it's a slicer plugin, and sometimes it's something for one of my 3D printers.
I've completed my MS in Data Science. My thesis focused on semantic and context-aware radar gesture recognition for TinyML and IoT devices. I wanted to see how far I could take gesture recognition on small hardware, and how a detected gesture could mean different things depending on what someone was doing on the host device.
On the AI side, I've worked with machine learning (ML), deep learning (DL), LLMs, and agentic AI. I'm especially interested in connecting models with actual tools and workflows, not just getting a response from a model. PolyForge and GrantCompass are two examples of that.
These are projects you can open on GitHub, look through the code, and try for yourself.
|
I wanted a way to turn descriptions and measurements into editable CAD models. This brings together Python, CAD tools, optional local AI, and checks to see if the results actually make sense. Repository and implementation | Tests |
A Cura plugin for splitting models into printable parts and joining them back together with plugs, dowels, snaps, or dovetails. I built it around a proper geometry engine instead of just a visual trick. Repository and implementation | Tests |
|
I made this because pricing a 3D print is more than calculating filament cost. It also considers machine time, electricity, maintenance, labor, design work, and profit across different slicers. Repository and implementation | Tests |
I wanted a better way to find funded study opportunities, compare them, and identify relevant researchers. This is a Python CLI and workflow that helps with searching, scoring, and reporting. Repository and implementation | Tests |
Also public: VocalKeep
|
|
I wanted a way to hear the speech in videos without the background music getting in the way. VocalKeep is a Python project exploring offline speech and music separation. The first phase focuses on local batch processing, not live removal in other apps. Public repository | Experimental |
I also have projects I'm building for myself and my printing work. I'm keeping the code private for now, but I wanted to show what I've been working on. These are custom illustrations for the profile, not screenshots or public demos.
|
Learning Forge I wanted to make educational models that do more than just look good. Learning Forge helps me create printable gears, mechanisms, and STEM kits, with checks for the maths and geometry. It also has a desktop interface so I can try ideas without doing everything by hand. Private project. Source code not public. |
Lamp Studio This started with Lumeforge and my earlier lamp experiments. I kept adding things I actually needed, and it has grown into an offline desktop app for designing lamps, light boxes, and printable parts. I'm keeping the newer application private while I work on the products. Private project. Source code not public. |
|
Puzzle Forge I've been experimenting with turning pictures, maps, and 3D models into puzzles that can actually be printed and assembled. This helps me work out the pieces, fit, and geometry instead of just making something that looks like a puzzle on screen. Private project. Source code not public. |
Chatmine I save a lot of useful links, photos, videos, and ideas in chats, then struggle to find them again. So I built Chatmine to organize that material and use AI to turn it into notes and ideas I can actually work with. Private project. Source code not public. |
|
Nightshift I kept repeating the same research and review tasks for my printing projects. Nightshift helps collect ideas, look for design problems, and prepare notes in automated runs. I still review the results and decide what is worth building. Private project. Source code not public. |
Madlab HQ My workstation has a growing collection of AI tools, local models, and projects. I wanted one place to check what's running and open the things I use regularly, so I started building a small local dashboard for all of it. Private project. Source code not public. |
- KitForge: I'm exploring ideas for printable STEM kits and how to plan their production.
- Quadender: I'm building my own multi-toolhead 3D printer, including custom mechanical parts.
- CADForge: I'm experimenting with ways to turn pictures and descriptions into editable CAD code. It's still research and development.
- PrintKit: I've been making calibration prints and simple tools to help translate real measurements into better print settings.
I have other experiments too, but these are a good snapshot. Some are still early, and I don't want to call them finished products before they're ready.
For my master's thesis, I worked with four radar gesture datasets and trained compact CNN models at different input resolutions. I also explored 8-bit quantization and the limits of running models on ESP32-class microcontrollers. The other part I found interesting was intent mapping: recognizing a gesture is one thing, but what it should do can change depending on the application you're using.
This was research and prototyping, not a commercial deployment.
I normally start with the problem, not the code. I figure out what I need the software to do, define the scope and requirements, and decide how I'll know it's actually working. I prefer keeping things modular so I can reuse useful parts in other projects.
| 01 / Plan and design Work out the requirements, architecture, edge cases, and what a passing result looks like. |
02 / Build with agents Break things into modules, direct the implementation, and review the parts that matter. |
03 / Test and improve Check real functionality, run unit and regression tests, and fix what doesn't meet the requirements. |
I can write Python and understand the code, but I use AI coding agents for a lot of the implementation so I can focus on the overall solution. I don't just accept what an agent generates. I check how it behaves, look at the code when needed, and decide what needs to change. I also document the decisions and try to catch problems before they become bigger ones.
I experiment with local open-source LLMs and token-efficient workflows too. If I can get something working reliably offline without spending unnecessary tokens, that's usually the route I'd prefer.
Explore my work · Connect on GitHub
I've kept my older learning projects here too. If you're new to my GitHub, the projects above are a good place to start.


