Music. Coding. Gaming. Life.

Coding

Programming has been a hobby of mine since I was a child. I am entirely self-taught, and have managed to carve out a career in the field that spans over fifteen years.

Initially, I worked with BASIC on the TI 99/4A, Atari 130XE, and the Commodore 64 and 128. This transitioned easily to Mac OS 7's QBasic. Then I learned Microsoft Visual Basic 4 through 6 and starting making small programs and games. My first two programming jobs involved me learning Microsoft Access, with all kinds of back-end VBScript.

In 1998, I got heavily interested in web technology, and took a dive into HTML and JavaScript. Soon, I'd pick up Visual Basic.NET, C#, and ASP.NET. I was then able to transition my HTML knowledge to the modern HTML5 browser. My JavaScript experience also readied me for learning Node.js. Along the way I've picked up a bunch of PHP and C/C++ as well somehow.

In many ways, I consider the core concept of coding to come quite naturally to me. You simply break a task down into smaller and smaller tasks. What really fascinates me about coding, however, is how you can put all these simple tasks together to do something phenomenal.

I am involved in many projects outside of my professional career that involve programming in some way. This page is dedicated to showcasing those projects.

Current Projects

Commits and Releases

Fix various bugs.
Remove streamers who have left the Discord server.
(2 total commits)
Restore check to ensure packets can only be received by the proper sources.
Upgrade to Discord.js 11.3.
Remove unnecessary code.
Calculate frame time independent of game time, and always calculate frame time so that functions that use FrameTime outside of when time is paused, such as the automap, can process time properly. Also, small optimization to debug printing.
Fix Mac compile bug.
Implement The Observatory interface as an F3 option while observing.
Implement The Observatory interface as an F3 option while observing.
Initial ship status code.
(33 total commits)
Nope, previous fix is a good safeguard but won't fix the bug. THIS will.
Nope, previous fix is a good safeguard but won't fix the bug. THIS will.
Fix bug with alternate colors.
(3 total commits)
Attempt to fix for Birdseye's bug regarding priority switch to a weapon you don't have after death.
Fix bug with alternate colors.
(2 total commits)
Re-enable powerups dropping from robots in co-op.
Re-enable powerups dropping from robots in co-op.
Testing potential fix to observing multi-level missions.
(12 total commits)
Testing potential fix to observing multi-level missions.
(12 total commits)
void
Add invuln packet for observers.
Release observers right before level transition, they will reconnect.
Observers better handle end of level.
Turns out that change wasn't necessary.
Various fixes to multi-level observing.
Forward end of level host packet to observers.
Let's try this one...
Don't check if the observer is out of the mine.
Typo fix.
Add appropriate readme for 1.4X6.
(9 total commits)
Attempt to always have 8 player starting locations. Fixes observer mode on some levels, and as a side effect this allows levels that don't have enough starting spots to work properly.
Increase MAX_RENDER_SEGS so that observers can see the entire level.
Don't wiggle in obs.
Ship status tweaks.
Underp.
Get ship status from players whenever someone new observers. Also removed some duplicated initialization code.
Always spawn observers in spot 0. Should fix co-op spawning issues.
Initial ship status code.
(8 total commits)
Looks like ship status updates are spammy so let's limit to six per second. Also, added gauges, and put ship status sends in other places. Possibly a functional version.
Update some places where we're sending ship status.
Fix various bugs with auto hosting.
Released DXX-Retro 1.4X6
Send ship status where needed.
Add appropriate readme for 1.4X6.
(2 total commits)
Add appropriate readme for 1.4X6.
Complete ship status functions.
Experimental. Send UPID_SYNC to observers.
(5 total commits)
Fix potential bug with F1 help screen by shortening it. Only display the commands necessary.
(2 total commits)
Fix potential bug with F1 help screen by shortening it. Only display the commands necessary.
Merge pull request #10 from roncli/master

Support for new Retro version 1.4X6.
(2 total commits)
removed GOG mention since it is now unavailiable
(10 total commits)
Dyslexia fix.
Experimental. Send UPID_SYNC to observers.
Code refactored.
Code refactored.
That's not how you do bitwise math...
(2 total commits)
That's not how you do bitwise math...
(2 total commits)
That's not how you do bitwise math...
Fix "demo rewind bug", where shields and energy were not showing correct values when rewinding through a demo frame that had more than one event of its type in it.
(25 total commits)
Fix undefined behavior in Retro. Based on discussion from #69.
(14 total commits)
Fix color and location of floating damage, bump version for official 1.4X6.
Support for new Retro version 1.4X6.
Merge pull request #7 from roncli/new-retro

Support for new retro versions 1.4X4 and 1.4X5
(6 total commits)
Fix gauges, and I suppose we shouldn't let players observe?
Use the damage/repair values, not the shields value.
Add floating damage/repairs.
Store shield changes.
Fix bug with observers seeing ships start with 1000 shields instead of 100.
Update to multi send damage, and new multi send repair.
Don't return a value from a void function.
Bump version, use testing protocol version number for now.
Fix undefined behavior in Retro. Based on discussion from #69.
(2 total commits)
Fix bug with redefined bool in C++.
Add shield display to observer mode.
Version 1.4.
Start moving DCL into the main scene.
Checkpoint in overhaul.
(12 total commits)
Fix minor bugs.
Fix bug when there's no track or artist resource.
Remove ES6 stuff from control page, as apparently iOS 9.3.5 can't handle ES6.
Fixes, rename config to control to thwart gitignore.
Updates to DCL, spotify volume, etc.
Add some funsies.
Fix methods.
Don't assume GET method.
Allow for HTTP methods other than get.
Week 19 updates, replace twitch-api with twitch-helix, and continuing work on events.
Get scenes working.
Intro, BRB, and full screen are now all working.
Added work on getting new index page up to date.
Updating intro screen.
Fix issues with flooding Twitter.
Add an audio analyzer.
Complete current API.
Initial commit.
Update to auto-make users streamers.
Partial checkin of 1.4, untested.
Released v1.3.1
Various bug fixes.
Initial commit of the new code base. Untested, probably has lots of bugs.
roncli.com Media Player