Meine Projekte

Eine Auswahl einiger Projekte der letzten Jahre

Open Source-Projekte

Dapper Extensions - Reloaded
Ein Fork des Projekts Dapper Extensions, erweitert um Attribut-basiertes Mapping und eine asynchrone API mit Tasks. Die öffentlich sichtbare Schnittstelle des Projekts wurde in diesem Zug radikal reduziert, indem alle nicht unmittelbar für die Nutzung der Bibliothek nötigen Typen privatisiert wurden.
SemVer-Provider
Ein kleiner Web Service, der nach semantischen Kriterien Versionsnummern für beliebige Produkte inkrementiert. Kann beispielsweise im Rahmen von Build-Prozessen o.ä. genutzt werden, um eine zentrale Versionsverwaltung zu etablieren.
Liphofra - "Little Phone Framework"
Hinweis: das Projekt wird nicht mehr aktiv weiterentwickelt.
Liphofra ist die einfallslose Abkürzung für "Little Phone Framework", weil ich nicht besonders gut darin bin, mir Namen für meine Projekte auszudenken. Das Framework enthält einen Extrakt bzw. eine überarbeitete Sammlung allerlei Helfer und unterstützender Typen, die ich über die Jahre in fast jedem Projekt für Windows Phone genutzt habe, um Anwendungen mit MVVM für die Plattform zu erstellen. Für mehr Details empfehle ich einen Blick in die Dokumentation auf der Projektseite.
PAARC - Phone as a Remote Control
Hinweis: das Projekt wird nicht mehr aktiv weiterentwickelt.
Dies ist eine Windows Phone-Bibliothek, die es erlaubt, sich mit jeder beliebigen (.NET-)Anwendung zu verbinden und Daten auszutauschen. Die unterstützten Datentypen rangieren von Sensordaten aller unterstützten Sensoren des Geräts, Daten der eingebauten Gesten sowie die Rohdaten des Touch-Inputs und über das On-Screen-Keyboard eingegebener Text. Die Bibliothek kann in weiten Teilen angepasst und erweitert werden, beispielsweise um Fernsteuerungsanwendungen zu erstellen oder um die eigenen Anwendungen um Funktionalität rund um Touch- oder sensorbasierte Eingaben zu erweitern. Das Projekt enthält einen Referenz-Client, der all die genannten Daten verschicken kann. Die Bibliothek kann aber auch einfach in eigene Windows Phone-Anwendungen integriert werden.
YLAD - Your Last About Dialog
Hinweis: das Projekt wird nicht mehr aktiv weiterentwickelt.
Bist Du es leid, für jede Windows Phone-Anwendung dieselbe Logik und denselben Inhalt wieder und wieder zu implementieren? "Your Last About Dialog" ist eine robuste, generische, hochkonfigurierbare Implementierung für typische "About"-Dialoge, die man einfach in die eigene Anwendung integrieren und anpassen kann. Die meisten Informationen werden automatisch aus der Anwendung ermittelt, es können aber auch Text und ganzer XAML-basierter Inhalt aus Remote-Quellen nachgeladen werden (inkl. lokalem Fallback-Inhalt). Der Dialog unterstützt zudem vollständige Lokalisierung. Das Projekt wurde von anderen Mitgliedern der Community auch auf andere Plattformen wie etwa UWP portiert.
YLOD - Your Last Options Dialog
Hinweis: das Projekt wird nicht mehr aktiv weiterentwickelt.
Vergleichbar zur Idee hinter meinem Projekt "Your Last About Dialog" habe ich eine generische Implementierung eines Options/Settings-Dialogs für Windows Phone-Anwendungen erstellt. Das Ziel ist es, einen solchen Dialog möglichst einfach integrieren, gleichzeitig aber alle Optionen erweitern und anpassen zu können, falls nötig. Die Komponente nutzt Reflection und einen Attribut-basierten Ansatz, um die typischen Konfigurationswerte ohne Aufwand unterstützen zu können und kann für eigene Datentypen einfach erweitert werden. Der Dialog unterstützt vollständige Lokalisierung.
Phone Net Tools
Hinweis: das Projekt wird nicht mehr aktiv weiterentwickelt.
Eine Sammlung von Werkzeugen, die bestimmte Limitierungen der Windows Phone-Plattform beseitigt, speziell im Bereich DNS und NTP. Sie enthält eine Implementierung von RFC 1035 für Windows Phone und eine (S)NTP-Implementierung nach RFC 5905.

Andere Software

Silverlight Debug Helper
Eine Erweiterung für Visual Studio, die den Debugger automatisch an Browser-Prozesse attached, welche Silverlight-Anwendungen hosten. Diese Erweiterung löst das Problem, dass moderne Browser eine Isolierungsfunktion für Plug-Ins wie Silverlight umsetzen (separate Prozesse), was dazu führt, dass Visual Studios eingebaute Funktionalität nicht mehr korrekt funktioniert. Diese Erweiterung wurde in der Community und von mir selbst über viele Jahre hinweg genutzt und 2010 kostenlos zur Verfügung gestellt.

Artikel und Veröffentlichungen

Das Portal "Silverlight Show" wurde im Laufe des Jahres 2015 von einem anderen Anbieter übernommen, weshalb diverse unten aufgeführte Inhalte nicht mehr abrufbar sind.

Windows Phone 8
Eine Artikelreihe mit "In depth"-Anleitungen für Entwickler, die 14 individuelle Teile umfasst. Die Artikel sind mehr als die üblichen Schritt-für-Schritt-Anleitungen, sondern bieten detaillierte Informationen über alle wichtigen neue Funktionen wie etwa "compile in the cloud", "native code support" oder Enterprise Development.
XNA for Silverlight Developers
Diese insgesamt ebenfalls 14 Artikel erklären die Funktionsweise von XNA auf der Windows Phone-Plattform und konzentriert sich darauf, Silverlight-Entwicklern den gezielten Einstieg in die Welt der Spiele-Entwicklung für das Smartphone zu erleichtern. Sie analysiert beispielsweise die Unterschiede zwischen den beiden Programmiermodellen und zeigt auf, wie sie kombiniert werden können. Jeder Artikel beschäftigt sich mit einem Aspekt von Spieleprogrammierung. Die gesamte Reihe ist auch als E-Book bei Silverlight Show und Amazon erschienen.
Getting ready for the Windows Phone exam 70-599
In dieser fünfteiligen Serie über die Zertifizierung zum Windows Phone Professional Developer beleuchte ich alle Aspekte und Anforderungen dr Prüfung und der involvierten Themenbereiche. Zusätzlich stelle ich einen Pool an Ressourcen für jedes Thema bereit, mit dem die Vorbereitung leichter fällt. Die Artikel inklusive aller externen Ressourcen, die dort erwähnt werden, sind als E-Book bei Silverlight Show und Amazon erschienen.
Creating the SilverlightShow Windows Phone App
Eine Reihe von Artikeln, die die Entstehung der offiziellen SilverlightShow-App erläutert. Sie erläutern sowohl die High-Level-Themen wie etwa das gewählte Software-Design und den Entwicklungsprozess, als auch einige interessante technische Details und Lösungen, die für andere App-Entwickler ebenso interessant sein könnten.
Andere Artikel bei Silverlight Show
Eine Liste aller weiteren Artikel, die ich insbesondere zu den Themen Silverlight und Windows Phone bei Silverlight Show über die Jahre hinweg veröffentlicht habe.

Webinare und Screencasts

Mehrere Jahre lang betrieb ich die (inzwischen vom Netz genommene) Seite "Goodcat Trainings", auf der ich mehr als 20 Stunden Video- und Kursmaterial zur Windows Phone-Entwicklung kostenlos zur Verfügung gestellt hatte. Zusätzlich habe ich in Kooperation mit der Seite Silverlight Show dort mehrere Trainings und Webinare zur Verfügung gestellt. Viele davon wurden später als kostenlose On-Demand-Variante veröffentlicht, die man auch dann ansehen kann, wenn man keine Möglichkeit hatte, live daran teilzunehmen. Beispiele:

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

3-Tages-Training "Spieleprogrammierung für Windows Phone" (auf Grund der umfangreichen Videogröße leider nicht mehr online)

Historisches

Cloud and Mobile User Group (2013-2014)
Eine kleine User Group rund um die Themen Windows Phone und Cloud Computing mit Windows Azure, die anfänglich in den Räumen der AIT GmbH zusammentraf und später eine Zeit lang privat weitergeführt wurde.
Windows Azure Incubation Circle (2013)
In dieser unregelmäßig zusammenkommenden Runde stellte Microsoft den Mitgliedern neue Funktionalitäten rund um Azure vor, sammelte Feedback zu bestehenden Funktionen ein und diskutierte Szenarien zu Azure-gestützten Anwendungen sowie hierfür nötige technische und rechtliche Anforderungen.
Portable Class Library Advisory Group (2012)
In diesem Beratungsgremium sammelte Microsoft Feedback und Erfahrungsberichte zu tatsächlichen Anwendungen und Anwendungsfällen, um die Technologie zu Portable Library Projects zu verbessern und weiterzuentwickeln.
Enterprise Library for Silverlight Advisory Board (2011)
Als Mitglied in diesem Beratungsgremium stellte ich Feedback zu Vorabversionen der Enterprise Library für Silverlight zur Verfügung und diskutierte über fehlende bzw. zu implementierende Features.
Eco Contest entry "Do you twig?" (2011)
Mein Eintrag zum Eco Contest 2011, bei dem es um die Erstellung von Silverlight-Anwendungen ging, die das Bewusstsein für die Abholzung der weltweiten Regenwälder schaffen. Der Eintrag landete auf dem zweiten Platz. Diese Quiz-Anwendung erzeugt dynamisch jeweils einzigartige Bäume in Echtzeit, die aus jeweils zehntausenden Elementen bestehen. Der obige Link beschreibt, wie dies technisch mit Silverlight erreicht werden konnte. In einem Folgeartikel veröffentlichte ich den Quelltext zur freien Nutzung.