Hey! Armin here, I create software, tools, and applications.

My primary focus is to build software that is exciting, inspiring, and reliable. For that, I am constantly evaluating new programming languages, software development techniques, and work on a lot of experiments.

Recently I've started a new project, the Massive project. Based on a 3D text renderer, I'd like to explore what real-time text based data can look in 3D within a limitless user interface space. Head over to the Massive page for a demo of the Massive Text renderer.

Besides of shouting out loud into the void, I contribute to open source projects and work at commercial projects to make a living. I take on freelance gigs if they align with my goals. If you are interested, you are welcome to contact me.

I am interested in the following:

And here are the things I've created:

2024 Q1

2023

2022

2021

2020

2019

2018

2017

2016

April

Started a new iteration of my personal Live Programming research: LivePipes provides functions that connect to the IDE and deliver feedback while typing.

2015

November

Created BuildOnSave, a Visual Studio extension that builds the current solution when a file is saved. Also available in the Visual Studio Gallery.

August

Created AutoFluent, a generator for fluent C# APIs in F# and released an AutoFluent package for Xamarin.Forms.

Created Windows 10 Dominator, an open source tool that manages the privacy settings of Windows 10.

June

Created and presented a F# DSL for specifying Interactive Voice Response (IVR) applications, in which parallel and sequential processes can be combined and coordinated based on their lifetimes and results. The demo uses Asterisk.ARI to accept and process incoming calls.

May

Evaluated the current state of Microsoft's CoreCLR and related technologies like DNX, HTTP request handling, XML & Json processing, OR/Ms, Configuration, and Serialization, to find out how to build and distribute server applications on Linux with .NET programming languages.

March

Created Dialog, an experimental live programming system for building user interfaces in F#.

February

Ported Facebook's CSS/flexbox layout engine to C#/.NET, which was later included in the official Facebook repository.

2014

November

Implemented a generic version of a Pratt Parser in F# that is specifically optimized for parsing expressions of pure functional programs (unreleased).

The German Amiga enthusiast magazine "Amiga Future" published the freeware versions of Oktalyzer and RAP!TOP!COP!.

October

Released Version 2.3 & 2.4 of LookHere to the Apple app store.

September

Created a pure functional text editor component in F# / OpenGL for a live programming IDE (not released). The editor supports most well known keyboard shortcuts and animates all content based on a differential animation algorithm. Test cases are realized with an internal F# DSL and resemble the typing actions of a user.

July

Released Version 2.1 of LookHere to the Apple app store.

June

For the upcoming Freeware release of RAP!TOP!COP!, a software for the Amiga, I created in the 90's, I wrote a small F# tool that converts an type setting format, which was used at Markt & Technik, to Markdown.

May

Created an Internet Explorer BHO extension in C++.

April

Gave an interview to the Amiga enthusiast site Obligement about Oktalyzer (hosted by Guillaume Guittenit).

March

Released the second version of LookHere! to the Apple app store.

Began developing sensor visualization components for the web.

February

Created Bricks, an alternative computation model, that implements a lazy evaluated, incremental, and stream-processing capable evaluation core.

Began to implement BricksUI, a user interface and live programming IDE, based on Bricks.

January

Created a Firefox extension in TypeScript.

2013

September

Created a prototype of a simple, lazy, pure functional programming language, and an interpreter that is suitable to be used in live programming environment. The grammar is defined and parsed with ScanRat.

Created Projections, an experimental F# library to experiment with streams processing in a lazy, dependency tracked environment.

August

Created ScanRat, a PEG parser combinator library for F#.

July

Created a Chrome extension in TypeScript.

May

Experimented with a WebRTC and TypeScript based file sharing tool for large files:

March

Created Promise, a strongly typed promise library for Typescript.

February

Created an MRCP/SIP client that simplifies access to the Nuance speech server recognition and text to speech features for Questnet GmbH. Most parsing was implemented by using Sprache.

January

Created a .NET communication client and WPF based console for O2 that implements a proprietary mixed text / binary protocol and communicates with their server over sockets and TCP/IP. The protocols were implemented with Faser.

2012

December

Created Faser, a format agnostic serialization library for .NET.

Open sourced Mime.Encoding, a .NET mime encoding library I developed for SharedSafe.

November

Released the first version of LookHere!.

Created SiteSharper, a static web site generator in .NET that uses a combination of Markdown and Razor templates.

Created and released Share To Desktop and Share To Folder, two small Windows 8 applications to the Windows App Store.

Open sourced JSNet, a experimental PEG parser generator and a JavaScript parser for .NET.

Created Konstruktor2, a dependency injector for .NET.

August

Created Facts, an update-in implementation for .NET.

July

Created CrossUI, a .NET drawing API, that is focused on instant test feedback. It has implementations for WPF and WinRT and a test-runner that automatically tracks changed .NET assemblies and renders their contained drawings.

June

Created, but did not finish Matter, a prototype of a small, lisp inspired, programming language.

Created, but did not finish InConcert, a command line tool to synchronize file system folders.

April

Created Rulez, a minimalistic rule evaluation engine.

February

Began developing LookHere, an iPad application for construction engineers.

2011

August

Created NChannels, a .NET implementation of Go's channels.

2010

Created and released several versions of BrainSharper, a concept mapping editor, for which I created

2009

Created and released several version of SharedSafe, a file sharing tool, with full encryption, automatic synchronization, and conflict resolution.

To make SharedSafe possible, I built:

Founded the company rootloft GmbH.

Customized xtCommerce and built egreenfee.de for a friend:

2008

Created a workflow engine for telephony applications in C# for Questnet GmbH.

Created a prototype of a photo organization and tagging application in C#/WPF.

2006

Implemented the workflow engine, business logic, and supervisor component for a bank statement printer "KIT" for Tomaxx GmbH.

Created a generic framework for cash machines, named "libfinance".

2005

Implemented large parts of the HDi implementation for Nero's HD DVD player software and public interfaces, which included:

Implemented the workflow engine, business logic, and supervisor component for the cash depositing machine "DPD Einzahler" and "Cashin 2" for Tomaxx GmbH.

Founded Sander & Messmer GbR.

2002 - 2005

Created CloneDVD together with the team at Elaborate Bytes until version 2.8.5.1. Developed the user interface, the DVD stream processing engine, managed the build process, and coordinated developers and public releases.

2001

Created and updated several versions of a C++ based telephony server and TCP/IP protocol implementation that allowed business logic clients to access several Aculab hardware features in parallel. The server is in use at Questnet and powers all telephone calls and services. About 50 million telephone calls in 2013.

2000

Created an experimental, small OpenGL based 3D engine in Haskell to see if lazy evaluation can be used to increase performance.

1999 - 2000

Contributed to the development of a Internet Casino Client for Modern Technologies Inc. Built the network communication layer, the automatic update system and the slot-machine game.

Created an XML to Java classes mapping system for Skynamics AG, which was used in the Intershop/Enfinity E-commerce servers.

1998

Created a state-machine based user interface and coordination system for Leicher GmbH in Java.

Created a user interface for a cash depositing machine in Delphi for Leicher GmbH.

Created a WYSIWIG text editor component with incremental layout including rotated and round texts for Envel GmbH in C++. The component was used in the label printing program DesignPro 2000 by Zweckform.

Created an automated extraction and reference documentation system for C++ source in Haskell.

1996

Contributed to the development of a PC remote control for Ruwido Electronics. Lead the project and built the configuration user interface and parts of the the serial port driver.

1995

Co-founded Digital SimpleX GmbH and created the following technologies from 1995 to 1997:

Created a 3D engine including texture mapping and world management by using Octrees. It was used in a DTM realtime game and simulation for Weltbild Verlag.

Created ACMstreams, a free audio-compression and format conversion library in Delphi, which was used at Ejay AG, amongst others.

1993

Created an animation system that was used in a virtual chemistry lab for Kosmos Verlag.

Contributed to a number of multimedia CD productions that were released by boeder AG between 1993 and 1995.

1992

Created RAP!TOP!COP! for Markt & Technik, a real-time hard drive compression driver, a hard drive optimizer, and a disk compression tool, including the appropriate user interfaces for the Amiga, which included the creation of

1989

Created Oktalyzer, a music tracker for the Amiga, that was able to play back 8 channels on the 4 Amiga hardware channels.