I've spent considerable amount of time programming, mostly within the context of free software, on this page I enumerate some projects where my meddling might be the cause of bugs or features.
Active projects
Projects where I am thinking about further development of the project at least every couple of months.
GEGL
GEGL (Generic Graphics Library) is a graph based image processing framework.
GEGLs original design was made to scratch i GIMPs itches for a new compositing and processing core. This core is being designed to have minimal dependencies. and a simple well defined API.
I am the current maintainer and architect of GEGL
babl
Babl is a dynamic, any to any, pixel format conversion library. It provides conversions between the myriad of buffer types images can be stored in. Babl doesn't only help with existing pixel formats, but also facilitates creation of new and uncommon ones.
Babl started it's life in gggl it was refactored into a library which both gggl and GEGL uses.
I am the designer and maintainer of babl.
I originally developed gluas for use image processing course given as part of a media technology education at Gjøvik University College.
bubbleview
BubbleView at the moment just a proof of concept and not a public release yet. See the linked blog entry for more information.
Dormant projects
The following projects are projects I am currently not activly developing, though if the circumstances allows there are ideas in some of these projects that I want to experiment further with.
horizon
horizon is a drawing application targetted at the nokia770/nokia800 internet tablets, written as a prototype for the unbounded sparse tile, auto mipmapping buffer architecture of GEGL.
gluas
gluas is a lua based prototyping environment for image processing algorithms. It provides a GIMP plug-in which is an IDE using lua scripts. Support for lua scripts compatible with gluas has been added to a few other image processing applications.
bauxite
bauxite was a video editing and compositing application used as an in-house tool for the production of a set of music videos.
gggl
gggl gggl was the GEGL like graph based image processing library used in bauxite. gggl was a personal experiment that grew into a prototype which was used to gain experience with graph based image processing, many ideas and portions of code have been migrated from gggl to GEGL now and for most purposes gggl has been assimilated by GEGL.
voxelpaint
voxelpaint voxelpaint was an experiment at 3d lego like raster manipulation. I still have the source it is written in C using SDL and seems to have quite good performance on modern CPUs. Old, source not publicized.
hnb
hnb is a curses based outliner written in C. I wrote it to scratch my own itch, and now that I no longer use it I feel that it would make sense to use it since it is a very neat way to manage information. My main reason not for using it personally any more is that it doesn't support utf8, and adding it would probably involve quite a bit of cleanup of the source since it was one of the first C applications I wrote.
I've received a lot of warming praise mail about hnb through the years, still new users discover the application and start using it.
hal91
hal91 is a single-floppy Linux distribution I put together to be able to use linux at the computer labs at high-school.
Lost in Time
In 2005 I got the opportunity to do a solo art exhibition and spent time for half a year creating various interactive video installations. Portions of the exhibit has been shown three times, in Oslo, Boston and Bergen. For further information see the documentation page for Lost in Time.
Other projects
The following projects are other projects and technologies I've helped shape the current form of.
GIMP
The GNU Image Manipulation Program is a free software project that has acted and acts as the default image manipulation program installed on many Linux Distribution. I am a long term, in-frequent contributor in misc ways for this project. On the long term I am a major contributor with my work on GEGL
cairo
Cairo is a postscript like vector drawing API available in C, Ruby, Python, PHP, C++ and more. I started using Cairo with GTK+ thorugh GtkCairo quite early, and provided some of the existing documentation. bauxite contained a lot of custom cairo drawn ui components.
rcairo
At some point I started trying to play with cairo from the Ruby programming language. There was a partial ruby extension for using cairo that was a bit outdated with regard to the API. I made the old version work and commited the fixes to the cairo repository since I had commit access. Someone else did an independent rewrite which had better code quality, this version replaced the old version in the CVS repository. At this time after some time keeping it up to date I found a developer that could maintain it more efficiently than me and I handed over maintainership.
When programming with rcairo