Skip to content
View mosamadeeb's full-sized avatar

Block or report mosamadeeb

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
mosamadeeb/README.md

mosamadeeb

(previously known as SutandoTsukai181)

If only writing profile readmes was as fun as coding...

πŸ“š Education

  • BSc. w/ High Honors in Computer Engineering (read: CS in middle east). Attended 2 years at Bilkent University then transferred to Middle East Technical University (NCC).

  • Some of the interesting courses I took:

    • Database Management Systems: query optimization, transaction management, concurrency control, crash recovery, security & authorization...

    • Image Processing: space and frequency domains, image enhancement, edge detection, segmentation, morphology, compression, pattern recognition... (all practiced in MATLAB)

    • Cloud Computing: parallel & distributed systems, scaling, virtualization, containers, AWS, architectures (REST, pub-sub, middleware), communication (RPC, messaging), coordination, election algorithms, fault tolerance...

    • Computer Graphics: ray tracing, shading, texture mapping, data structures for graphics, modelling & viewing transformations, forward rendering pipeline, culling, clipping, rasterization, OpenGL, vertex & fragment shaders, shadows, curves, surfaces...

    • Operating Systems, Data Communication & Networks, Embedded Systems

  • My capstone project was about activity detection-based health monitoring where I programmed MCUs in C++ and Pi's in Python to create a reliable and recoverable multi-sensor network that collects human motion data for activity detection on the edge.

🧠 Interests

Backend development, because I like designing and building systems, and I'm always excited about the latest open-source libraries that let me try out different approaches for solving a problem πŸ‘€.

  • Completed courses about HTTP clients and web servers while learning Go on Boot.dev.
  • Build(ing) an API for a workout tracker (idea from roadmap.sh) in Go so I can become familiar with modern backend practices in Go.
  • Built some RESTful servers during my internships using .NET (C#). I later on realized how huge of a tech debt .NET had after I built a server in Go.

Reverse engineering, because I like going deep into the details of how something works.

  • I RE'd a lot (and I mean a lot) of file formats and structures used in video games, and built tools for them, such as:
    • (Un)packers for archive formats

    • Conversion (or Blender import) scripts for 3D model, animation, and texture formats for games such as Yakuza, Kurohyou, and Naruto Storm/JoJo All Star Battle

    • (De)serializers for general game data formats

  • Used IDA Pro, Ghidra and x64dbg (disassemblers/debuggers) to figure out specific game behaviour which allowed me to:
    • RE some of the more complicated formats

    • Find out the compression algorithms or encryption used for archives

    • Write function hooks that get injected into the game's process to modify the logic, and perform things such as loading unpacked modifed files from other directories (essentially a mod loader)

πŸ’» Programming languages

  • Language I'm most comfortable with: Python, as I've been using it for +4 years for writing scripts and it just used to fill my (simple) programming needs.

  • In addition to Python, I've written a lot of projects in C++, C#, Java, and Rust.

  • Favourite programming language: the right one for the job Go, because it lets me write clean and simple, yet powerful and performant code. It also ticks all of my checkboxes for a user-friendly language (type inference, structs with methods, no OOP, no borrow checker, less brackets/semicolons).

  • I still occasionally use C++ and Python, depending on the requirements of what I need to build.

πŸ‘¨β€πŸ’» Projects

These are some of the projects I think are interesting, grouped by language.

πŸ’» Language πŸš€ Projects
Python ChatDB PyBinaryReader eboot_string_patcher
.NET C# RyuModManager ParToolShell MMXD-Mods
C++ Raytracer Transformer CpkPatcher
Rust yagami-decryption-agency xfbin-nucc-binary
Blender yakuza-gmt-blender kurohyo_elpk_blender cc2_xfbin_blender

Stats

Pinned Loading

  1. RyuModManager RyuModManager Public archive

    Mod manager for Yakuza series (Ryu Ga Gotoku) PC games.

    C# 96 20

  2. ChatDB ChatDB Public

    A web app built with Streamlit that allows you to chat with your databases using a GPT model.

    Python 11 7

  3. PyBinaryReader PyBinaryReader Public

    A python module for basic binary file IO.

    Python 16 7

  4. MultiSensorHardwareSetup MultiSensorHardwareSetup Public

    MCU code for our Capstone project at METU NCC

    C++

  5. CpkPatcher CpkPatcher Public archive

    Tool for patching a CPK by updating file data without repacking the entire CPK

    C++ 4 2

  6. yagami-decryption-agency yagami-decryption-agency Public archive

    Decrypts/encrypts Judgment and Lost Judgment PC chara.par archives

    Rust 6 1