Publications

The .NET Asynchronous I/O Design Pattern,
CodeProject, February 19, 2010
Asynchronous operations allow a program to perform time consuming tasks on a background thread while the main application continues to execute. However, managing multiple threads and cross-thread communication adds complexity to your code. Fortunately, the .NET Framework has a useful design pattern applied to its I/O classes which easily enables asynchronous calls.


GPS Receivers, Geodesy, and Geocaching: Vincenty’s Formula,
CodeProject, August 8, 2007
Vincenty’s Formula is an iterative solution for calculating the distance and direction between two points along the surface of Earth. This is a C# library implementing Vincenty’s classic solution.

Fixing C# BindingList<T> Deserialization, CodeProject, July 22, 2007
BindingList is flawed with regard to serialization. A flaw in the SDK prevents PropertyChanged events on INotifyPropertyChanged instances from getting rewired on deserialization. Here’s a solution to fix the problem.


End-to-end Internationalization of Web Applications, JavaWorld, May 24, 2004
JavaWorldInternationalization and localization of Java web applications is about more than rendering pages in locale-specific languages. It’s about building applications to be globally aware from the browser all the way through to the database. In this article, you look at where to address character encoding, how localization affects data format, and additional internationalization tools provided by Apache Struts. You also learn how to overcome gaps in the standards and in the Struts framework as well as what pitfalls you might face during implementation.This article has been cited by Arnold Doray is his book “Beginning Apache Struts” and by Melih Çetin in “Java internationalization with the Properties Pre-Processor”.