Software engineering foundations
Cross-Language Interactive Systems
Interactive game systems implemented across Python, Java, JavaScript, and C++ to teach programming through command-line, desktop GUI, and browser interfaces.
- Role
- Developer / Technical Educator
- Period
- 2022–2023
- Category
- Five applications across four languages
- Stack
- Python · Java · JavaScript

A shared domain across multiple languages
I created these applications as teaching material for my YouTube channel. The engineering value is the deliberate translation of the same domain concepts—player state, combat, inventory, navigation, validation, progression, and win/loss conditions—across different languages and execution environments.
Python architecture
The largest project is a modular terminal space RPG divided into Player, Alien, Boss, and Planet models plus application orchestration. It includes randomized enemy and planet generation, resource-gated progression, combat actions, experience, upgrades, currency, and nested command loops.
Event-driven interfaces
The Java version uses Swing and AWT components with ActionListener handlers and state-dependent command dispatch. The browser GUI version uses ES6 classes, dynamic DOM rendering, callbacks, inventory arrays, and conditional interface updates.
Asynchronous browser terminal
A separate JavaScript implementation converts form events into Promise-based input. This allows the application to express browser interaction sequentially through async and await, while the browser remains event-driven underneath.
Engineering signal
The suite demonstrates language transfer, object-oriented design, state modeling, procedural generation, event-driven interfaces, asynchronous control flow, input validation, file I/O, and Git-based iteration.