My Projects

A selection of some of my projects over the last years

Open source projects

Good Injector
This is a productively used, proven dependency injection container without frills and written in TypeScript. An adapter for vue.js is available which allows seamless use of the container in that framework.
Dapper Extensions--Reloaded
This is a fork of the Dapper Extensions project, extended by attribute-based mapping, asynchronous APIs and extended logging. Changed to a highly opinionated implementation without the massive black magic going on behind the scenes in the original, and tightened the publicly available surface to exclude everything that's not necessary for using the library.
This is a command line utilitiy to analyze git repositories. It enables you to inspect commits and code contributions of all involved authors, to filter by branches or file types, and to merge commits by the same person done with different aliases. The documentation on the features is available here in my blog..
SemVer provider
A small web service that increments version numbers for arbitrary products by semantic criteria. Can be integrated into build processes to establish a central version number management for your projects.
Liphofra - "Little Phone Framework"
Hint: this project is not being actively maintained anymore.
Liphofra is the unimaginative abbreviation for "Little Phone Framework", because I'm really bad at finding good names for projects. The framework consists an extract of some helpers and supporting features that I used over the years in almost every project for Windows Phone, to create applications with MVVM for the platform. For more details, please take a look at the documentation.
PAARC - Phone as a Remote Control
Hint: this project is not being actively maintained anymore.
This is a Windows Phone library that allows to connect to any (.NET-based) application and exchange data. The supported data types range from sensor data of all supported sensors on the device, data on user-initiated gestures as well as raw touch input, to typed text from the on-screen keyboard. The library can be customized and extended in various ways, for example to create remote control applications or to extend own desktop applications by touch and sensor input features. The project contains a reference client that does all of that and can be used to remotely control your windows desktop with your phone as input device. The library can also be easily integrated into your own Windows Phone apps.
YLAD - Your Last About Dialog
Hint: this project is not being actively maintained anymore.
Are you tired of implementing the same logic and the same content for your Windows Phone apps over and over againg? "Your Last About Dialog" is a robust, generic, highly configurable implementation for typical "about" dialogs, that can be easily integrated into your own application - fully customizable. Most information is extracted automatically from the application itself, but text and whole XAML-based pages can also be collected from local and remote sources (including local fallback when no remote connection is available). The dialog fully supports localization. The project has been improved and ported to other platforms like UWP by various members of the community.
YLOD - Your Last Options Dialog
Hint: this project is not being actively maintained anymore.
Similar to the project "Your Last About Dialog", this is a generic implementation of an options/settings dialog for Windows Phone applications. It's goal is to enable developers to easily integrate such a dialog into their apps, but at the same time provide detailed options to extend and customize the experience if necessary. The component uses reflection and an attribute-based approach to support typical configuration values without additional effort. This can be extended with own data types. Localization is fully supported.
Phone Net Tools
Hint: this project is not being actively maintained anymore.
A collection of tools to remove certain limitations of the Windows Phone platform, in particular around DNS and NTP protocols. It contains an implementation of RFC 1035 for Windows Phone and a (S)NTP implementation based on RFC 5905.

Other software

Silverlight Debug Helper
This is an extension for Visual Studio which attaches the debugger automatically to browser processes that host Silverlight applications. This extension solves the problem that modern browsers isolate plug-ins like Silverlight into separate processes, which results in the situation that Visual Studios built-in debugging feature doesn't work correctly anymore. This extensions was used in the community and by myself for several years and provided free of charge in 2010.

Windows Phone articles and publications

The portal "Silverlight Show" was acquired by a different company in 2015. Lots of the below linked content is not available anymore.

Windows Phone 8
A series of articles with "in depth" tutorials for developers, in 14 individual parts. The articles are more than the usual step-by-step guides, but allow deep insights into all important features (like "compile in the cloud", "native code support" and others) and enterprise development.
XNA for Silverlight Developers
This also consists of 14 individual articles that explain the features of XNA on the Windows Phone platform and concentrates on helping Silverlight developers with getting kick-started for game development on their smart phones. They analyze the differences between both programming models and demonstrate how to combine them. Each article focuses on one aspect of game programming. The whole article series is available as e-book over at the guys of Silverlight Show, and on Amazon.
Getting ready for the Windows Phone exam 70-599
In this five-parts series on the certification to a Windows Phone Professional Developer I talk about all the aspects and requirements of the test and the involved topics. In addition, I provide a pool of resources for every topic to help with your preparation for the tests. The articles, including all external resources mentioned in them, are also available as e-book at Silverlight Show and on Amazon.
Creating the SilverlightShow Windows Phone App
A series of articles that explain how the official Silverlight Show app has been built. This explains high-level topics like the software architecture and development process as well as some of the more interesting technical details and solutions that might help other app developers as well.
Other articles on Silverlight Show
A list of all additional articles, in particular on the topics of Silverlight and Windows Phone, that I have published on Silverlight Show over the years.

Webinars and screencasts

Over the course of several years I provided the (now offline) Site "Goodcat Trainings" with more than 20 hours of videos and tutorial materials for Windows Phone development topics, free of charge. Additionally I provided multiple trainings and webinars on similar topics at the site Silverlight Show. Many of those were later also published as free on-demand version, which you can watch if you didn't have time to attend live. Samples:

Advanced MVVM for Windows Phone

Windows Phone Raw Camera Access

Unit Testing for Windows Phone

Networking with Sockets on Windows Phone

XNA for Windows Phone 7

A 3-day training on "Game development for Windows Phone" (due to the size of those videos this is not available online anymore)

Historic Topics

Cloud and Mobile User Group (2013-2014)
A small user group around the topics of Windows Phone and Cloud Computing with Windows Azure, that I managed over at AIT GmbH in the beginning and then continued on a private basis later.
Windows Azure Incubation Circle (2013)
In these meetings at Microsoft they provided all members with information on new features around Azure, collected feedback on existing features and discussed scenarios for Azure-based applications and the involved technical and legal requirements.
Portable Class Library Advisory Group (2012)
In this consulting counsil Microsoft collected feedback and experience reports on actual applications and use cases to improve their technology on portable class libraries.
Enterprise Library for Silverlight Advisory Board (2011)
As a member in this consulting counsil I provided feedback on Microsoft's previews of the Enterprise Library for Silverlight, and discussed missing features.
Eco Contest entry "Do you twig?" (2011)
My entry for the Eco Contest 2011, where attendees built Silverlight applications on the awareness of world-wide deforestation of rain forests. My entry made second place, and dynamically generated unique trees in real time, each consisting of thousands of elements. The above link describes how this was technically made possible in Silverlight. A follow-up article published the full sources.