XML is a markup language that organizes and stores data in a structured format using tags and is commonly used for exchanging information between different systems and applications.

I have utilized XML in different capacities in various projects including writing logic to create XML data, interpret XML data, as well as utilize Xpath to gather information from complex data structures.

XML Projects

NGRAIN Flash Animation Development

During my experience at NGRAIN Corporation, I was the lead programmer on an animation process upgrade which included consolidating various methods used to develop linear and interactive Flash animations into one system which makes it easier to develop, edit and update/upgrade. One of the biggest improvements was to bring all of the variously placed text used in the animations outside of the timeline into xml to vastly improve the editing time and make it far easier for language translation. Another improvement was to remove the redundant inline code of telling the animation when to pause and play, and instead have the developer simply insert smart keyframe labels to automate the process.

A process of having overlays of correct and incorrect hotspots was also introduced to ease the development and an ability to import animations from existing projects streamlined the process. Other highlight features include easy to use add-ons such as multiple choice questions, dialog boxes, tooltips, drag and drop selections, a virtual camera system, LMS tracking using SCORM, backwards compatibility, and more; all in the name of reducing the work-load and turn-around time for the redundant tasks the animators have.

GPX (gps) Uploader and Viewer

In 2012 good friends of mine embarked on a motorcycle trip around the world, although I did not create their website ( I helped with many small features such as a RSS feed reader which automatically populates any YouTube updates, as well as an interactive map showing their route so-far.

At first I used existing services such as EveryTrail and TripTracker which started to really slow down the map navigation as their route became much longer. I eventually took matters into my own hands and created a system using PHP and MYSQL to read GPX (xml based GPS files) and populate a database with time, coordinates and other info.

I also learned how to use Google Map's API to display a very complex route on a map using data compression as the line plots loaded onto the map exceeds 650,000 points so far. I also created a crude GUI so that all my friend needs to do, is upload the GPX files and press a button to load the points into the database.

Google Maps API