With over 40 years of C/C++ development experience, my programming journey began with a Power 3000 by John Sands and Sega, where I gained foundational exposure to programming concepts. My early experiences quickly led me to the Microbee and Z80 Assembly, where I developed a unique EPROM-based radial switch for efficient hot-swapping between development tools mid-program, demonstrating an early aptitude for optimizing development workflows.
My passion for software development truly flourished with the Amiga and Motorola 68000 series chips. Here, I honed my skills in C using SAS/C, my first integrated development environment (IDE), and mastered the seamless integration of C and Assembly language, a crucial skill for performance-critical applications. My transition to the x86 architecture, albeit a brief foray into the PC world with an Amstrad dual-floppy system, provided valuable exposure to early DOS and Windows programming environments, broadening my understanding of diverse operating systems.
Returning to the Amiga, I successfully reverse-engineered MaxisBBS to create Doorrunner BBS, implementing a robust plugin architecture and demonstrating advanced systems-level programming capabilities. Connected to a 300bps modem, you could watch the ASCII art draw. Following this, I made a significant leap to Linux, where I independently developed my first 2D game engine using OpenGL and OpenAL. This engine was designed for cross-platform compatibility, running seamlessly across Windows, Mac, and Linux, and resulted in the creation of my first side-scrolling game.
This extensive background ultimately led to a pivotal and challenging undertaking, the development of a 3D online Casino from the ground up. In an era where commercial game engine licensing was cost-prohibitive, I designed and built the entire system independently, a testament to decades of diverse development experience and a strong command of complex software architecture. After this significant achievement, I took a break from coding to explore filmmaking, an experience that, while distinct from programming, significantly enhanced my collaborative and project management skills, which were previously cultivated through largely solitary coding endeavours.
Now, having come full circle, I am eager to re-engage with and contribute to new programming projects, leveraging my deep and varied technical expertise.