I’m a secon-year M.Sc. student, enthusiastic, self-taught computer science graduate and software engineer who loves building things from scratch—whether it’s a compiler, a tool, or a clever idea. I’m deeply interested in theoretical computer science, systems programming, and low-level computing.
My research interests are programming languages design, compiler construction, parallel computing, AI, and image processing.
Living with ADHD has shaped how I learn and think: I dive deep, follow curiosity wherever it leads, and often find joy in details others overlook.
") does not match the recommended repository name for your site ("
").
", so that your site can be accessed directly at "http://
".
However, if the current repository name is intended, you can ignore this message by removing "{% include widgets/debug_repo_name.html %}
" in index.html
.
",
which does not match the baseurl
("
") configured in _config.yml
.
baseurl
in _config.yml
to "
".
Zeyad Ahmed
ACM SIGCSE Technical Symposium 2024
In Learning computer architecture and low-level programming is a complex challenge for beginners. We introduce Roro8, an 8-bit fantasy computer system designed to simplify the learning process while closely mirroring real-world computer systems. Roro8 comprises an 8-bit microprocessor (RX8), memory-mapped I/O, external peripherals, and an external display (RD6448). This unique feature enables students to become familiar with datasheets of devices, a fundamental aspect of hardware programming. The core pedagogical goal is to have students implement an emulator, simulators, assemblers, and compilers, providing a hands-on learning experience. They can create games or see their own programs running on the display, making abstract concepts tangible and engaging. Our work addresses the challenge of teaching computer architecture by offering a novel solution. Unlike conventional system-on-chip designs, Roro8 simplifies the learning process while emphasizing practical engagement. This paper outlines the problem, reviews related work, introduces Roro8, and underscores the significance of our approach in enhancing computer science education.
Zeyad Ahmed
ACM SIGCSE Technical Symposium 2024
In Learning computer architecture and low-level programming is a complex challenge for beginners. We introduce Roro8, an 8-bit fantasy computer system designed to simplify the learning process while closely mirroring real-world computer systems. Roro8 comprises an 8-bit microprocessor (RX8), memory-mapped I/O, external peripherals, and an external display (RD6448). This unique feature enables students to become familiar with datasheets of devices, a fundamental aspect of hardware programming. The core pedagogical goal is to have students implement an emulator, simulators, assemblers, and compilers, providing a hands-on learning experience. They can create games or see their own programs running on the display, making abstract concepts tangible and engaging. Our work addresses the challenge of teaching computer architecture by offering a novel solution. Unlike conventional system-on-chip designs, Roro8 simplifies the learning process while emphasizing practical engagement. This paper outlines the problem, reviews related work, introduces Roro8, and underscores the significance of our approach in enhancing computer science education.
Zeyad Ahmed, Mostafa Mohammmed
ACM SIGCSE Technical Symposium 2023 2023
Simplifying programming for novices and students is a goal for many computer science instructors over the world and an essential concern for computer science education in general. this paper we introduce CodeVisions, a static code analyzer and interpreter that provides testing and assessment mechanisms and generates a detailed trace of code execution. It’s intended to be used to facilitate creating programming tutoring or coding assessing applications (Such as visualizers and auto-graders) through a variety of supported programming languages and flexibility of restricting code inputs. CodeVisions has a testing mechanism that allows users to write their own tests to validate the dump to their rules instead of manually parse the dump themselves resulting a test report too.
Zeyad Ahmed, Mostafa Mohammmed
ACM SIGCSE Technical Symposium 2023 2023
Simplifying programming for novices and students is a goal for many computer science instructors over the world and an essential concern for computer science education in general. this paper we introduce CodeVisions, a static code analyzer and interpreter that provides testing and assessment mechanisms and generates a detailed trace of code execution. It’s intended to be used to facilitate creating programming tutoring or coding assessing applications (Such as visualizers and auto-graders) through a variety of supported programming languages and flexibility of restricting code inputs. CodeVisions has a testing mechanism that allows users to write their own tests to validate the dump to their rules instead of manually parse the dump themselves resulting a test report too.