Programming Articles

A collection of posts covering HTML5 Canvas animations, Arduino frameworks, game scripting, and lightweight PHP tools — all from hands-on tinkering.

There is something deeply satisfying about building interactive animations from scratch using nothing but a canvas element and a few lines of code. Whether you are creating a simple ripple effect on water or a more complex particle system, the possibilities are endless. The key is to start small and iterate, gradually adding layers of complexity as you become more comfortable with the underlying math and logic. Many of the projects featured here began as experiments during idle evenings, driven by simple curiosity rather than any grand plan. That spirit of playful exploration is what makes programming such a rewarding craft, especially when you see your creation come to life in the browser.

For those who enjoy blending digital design with physical output, plotters and cutting machines offer a fascinating bridge between the two worlds. Generating HPGL or SVG files from your own scripts allows you to create everything from custom decals to intricate drawings on paper. The process involves a fair amount of reverse engineering and patience, but the results are well worth the effort. OpenSCAD models, chamfered edges, and precise geometric patterns all become tangible artifacts of your tinkering. This intersection of software and hardware is a rich playground for anyone who loves making things, whether for practical use or just for the joy of seeing a machine follow your instructions.

Gaming has always been a source of inspiration for programming projects, from studying the mechanics of classic titles to building simple clones and tributes. The way enemy territory or return to castle wolfenstein handled multiplayer interactions, or how doom created its immersive environments, offers endless lessons in game design and scripting. Modern web technologies make it possible to recreate some of that magic directly in the browser, using HTML5 and canvas to build lightweight games that run anywhere. Even something as simple as a coin collection mechanic or a mini map can teach valuable concepts about state management, collision detection, and user input handling. These projects are as much about learning as they are about fun.

The tools we use every day often hide fascinating layers of functionality beneath their polished surfaces. Taking apart a keyboard like the Logitech G213 to understand its illumination system, or writing plugins to extend a piece of software, reveals the thoughtful engineering that goes into even the most mundane peripherals. Sometimes the most useful projects come from addressing small annoyances, like customizing button layouts or tweaking color schemes to suit personal preferences. The Raspberry Pi and similar microcontrollers have made it easier than ever to experiment with hardware hacking, from building custom input devices to automating repetitive tasks. This kind of reverse engineering is not just practical; it is a form of discovery that deepens your appreciation for the technology you use.

Dark abstract digital composition with glowing blue and orange geometric patterns suggesting code and data flow

Water ripple effect done in HTML 5

Posted in Programming

An interactive water ripple simulation built with the HTML5 Canvas API. Mouse movements generate realistic expanding wave patterns on a virtual liquid surface, demonstrating real-time pixel manipulation and frame-buffer techniques.

Inkscape and Plotters, the 3rd

Posted in Programming · September

Continuing work on Inkscape's built-in plotter extension. This post covers HPGL export refinements, serial and USB connection handling for pen plotters and cutting plotters, and updates shipped with Inkscape 0.91.

Snow effect done in HTML 5

Posted in Programming · February

A Canvas-based snowfall animation using a particle system. Each flake follows an independent drift path with subtle wind and wobble, creating a calm, layered winter scene entirely in the browser.

Starfield animation done in HTML 5

Posted in Programming · February

Inspired by the classic Windows 95 starfield screensaver, this Canvas animation simulates flying through deep space with parallax depth layers and smooth forward motion.

The Logitech G213 and Linux

Posted in Programming, Tools · October

A look at the Logitech G213 Prodigy Gaming Keyboard on Linux. Covers key illumination control, the gaming-mode button, and reverse-engineering the RGB colour protocol using Python.

More Programming Topics

Arduino & Microcontroller Projects

Tag: Arduino

An LCD framework for HD44780 displays, string and float conversion patches, micro-quadcopter build logs, and a Geiger counter radiation measurement system — all built around the Arduino ecosystem.

Counter-Strike: Source Eventscripts

Tag: Scripts · December

Legacy server-side scripts for CS:S built with the Eventscripts framework. Includes a Banking Script with SQLite integration and a Happy Hour Script for timed in-game events. The author has since moved on from CS:S scripting.