Hobby Programming

Some software I have made always for fun, sometimes for work too.

ogl (2017)

C++

A fractal landscape generator using the diamond-square method and a rendered using OpenGL. Github

cjeeq (2021)

C

Reimplementation of jeeq in C using the OpenSSL library. In order to encrypt messages on the blockchain, we want to encrypt and decrypt with users' ECDSA key-pairs. It uses the ElGamal encryption scheme to encrypt short messages with the receiver's public key and the receiver can then decrypt them with their private key. Github.

schapl (2022)

Scheme

An APL-like vector calculator. Mainly a project to play around with Lisp. Rob Pike and others are working on something similar in Go called Ivy, but much more advanced. Github.

Goulden-Jackson cluster method (2022)

Sage

For my BS project, I implemented the Goulden-Jackson cluster method in Sage which you can use it to count permutations that avoid center types of patterns. This can be used to compute odds in Penney's game. Github

Tombe (2026)

Go

This simple raytracer can render arbitrary closed surfaces, but currently it can render spheres, "wavy spheres," simplices, octahedrons and boxes. The source can be found on Codeberg.

The example has 4 colored light sources lighting 6 objects.