software development
spare time projects & more

Evolution of mankind…
Computers have been a major interest of mine for as long as I can remember. The first machine that I got in ’92 was actually a notebook: a glorious and even at that time hopelessly outdated model with a 16-bit Intel 80286 processor running at 6 MHz, 10 MB of hard disk, 512 KB memory and a b/w display. A good year later the device’s LCD thankfully broke down, so I obtained an upgrade to a desktop with an 80486 CPU at 80 MHz, which was a huge step up to say the least and corresponded to the equivalent of a middle class machine back then—therefore something where you could actually do something with. From that point on I was completely hooked with computers and the ongoing technological development in that area.
More or less naturally, like many others I started soon to code my own programs in QBasic, which was shipped with every DOS-operated computer at the time and posed the language of choice for any beginning programmer. With the passing of time more and more languages came to the repertoire. In summary, I’ve worked on and off with C/C++, Pascal/Delphi, Assembler and various other programming languages since the middle ’90s. As this very webpage probably shows you, I’ll also try my hand on (dynamic) web page design from time to time…
All this experience became quite helpful during my PhD time. Aside from developing a couple of tools that we were using internally in our research group, more recently I finished the reference implementation cohomCalg for an algorithm we found to compute cohomology group dimensions.
Code pieces on the loose:
While most of my early projects from the ’90s and early 2000s were only developed for the fun of it and to learn coding structures, a few bits and pieces of these ancient things are still floating around the internet. For example, there are still two of my projects available in “the developer’s toolbox” archives of the now shut-down flipcode.com, which was a very nice programmer’s resource that unfortunately shut down a couple of years later:
- a math library for vector, matrix and quaternion computations, which one frequently requires in 3D graphics
- a very elementary processor detection code, which mostly consisted of a big translation routine from CPU state values to human-readable identifiers
Back in the early 2000s I was coding a basic 3D engine, where I also learned quite a bit on the DirectX and OpenGL graphics API structures. The Genesis3D open source engine was in it’s early stages at the turning of the millennium—but already a vastly huge project from my point of view—and I worked on boiling down the basic workings of such a project to a simple toy engine. Funny thing, however, is that the Genesis3D developers apparently took advantage of my processor detection class from flipcode and integrated it in the engine. This engine project is still maintained and developed further under the name G3D engine.
Aside from that some limited code blocks from high school projects may be floating around the web as well…