(Christophe Coenraets) NOTE: This is the PHP version of this article and its companion app. A Java version is available here.
(Christophe Coenraets) NOTE: This is the PHP version of this article and its companion app. A Java version is available here.