The following is a short list of (mostly) coding projects I've worked on, both professionally and for hobby:

Sub-Surface Imaging Systems (2010)

A proprietary C#.NET software package developed as the onboard controller interface for Ground-Penetrating Radar equipment manufactured by US Radar, Inc.

As of January 2010, I've taken over the existing codebase to implement a slew of new features: GPS navigation support, GIS mapping integration, onboard signal processing, high-throughput data collection, internationalization, and more.

jKMLMap (2010)

A free, opensource Javascript/AJAX solution to parse a Google Earth KML file and generate an embedded Google Maps interface for displaying its markers and paths. Supports adding/removing individual markers via collapsable hierarchical sidebar menus, asynchronous loading and unloading of KML data, pop-up marker captions, and more.

This code was originally written in 2006 as the basis for my travellog here, undergoing heavily revisision for public consumption in 2010.

Facebook Photo Fetcher (2010)

Facebook Photo Fetcher is my first publicly-released Wordpress plugin, designed to allow bloggers to quickly and easily generate customizable photo galleries by importing them directly from their existing Facebook albums. It works similarly to Wordpress Shortcode, allowing galleries to be embedded in any post or page - and also provides an interface for programmers to fetch galleries directly from PHP in their templates or widgets.

WP-ViperGB (2010)

A Wordpress plugin designed to replicate the appearance and behavior of the discontinued Viper Guestbook project. It automatically creates a functional and user-friendly guestbook that lives in a standard Wordpress page, including features like basic skin selection, location/browser/OS detection, user-uploadable images, paged entries, and more.

FloorPlanner 3D (Working Title) (2009-2010)

A 3D raytracing package for interior design, developed in collaboration with www.Bit-Kit.com of Oslo, Norway.

This product is still under development; more details will follow as we get closer to launch.

Anti-Piracy Library (2009)

An advanced copy protection library written in native C++ (client component) and PHP/MySQL (server component). Functionality includes:

  • Online software activation and deactivation
  • Online clock validation for time-limited demos
  • 128-bit strong encryption to prevent sniffing of activation data
  • CRC error checking to prevent manipulation of activation data
  • Digital watermarking to uniquely tag each binary with the legal owner who purchased it
  • Hardware-based system validation to prevent license sharing between machines
  • Dynamic self-modifying binaries to prevent software cracks from functioning
  • Numerous obfuscation techniques to combat decompilation

Language Tools (2009)

Created a number of tools to assist in foreign language study, including:

  • Plugins for the fantastic Spaced-Repetition Software Anki. They can be downloaded for free from within the software's plugin manager.
  • A Windows Mobile app to enable keyboard-driven toggle of the CE-Star language IME
  • Glossaries for the multilingual Babylon dictionary, generated by a custom parser written in C++/CLI. These glossaries may be freely downloaded here:
    • EDICT, the most complete electronic English-Japanese dictionary available.
    • ENAMDICT, a supplementary dictionary containing proper names and places.
    • Heisig Indices for all characters appearing in Remembering the Kanji volumes 1-3.

The Kifani Collection (2008-2009)

Developed the name, story, and core marketing concept for a multimillion dollar diamond collection owned and distributed by Rahaminov Diamonds of Los Angeles, CA.

Also created numerous advertising materials in Flash CS4, as well as backend server code for their customer and product database.

Massive Radargram Scroller (2008)

This 2D visualizer was developed as an add-on module to Dr. Dean Goodman's internationally acclaimed GPR-Slice software (see below). Its highly optimized streaming routines can load and display raw or preprocessed ground-penetrating microwave radar files in excess of two gigabytes - with less than one second of initial load time. It supports hand marker, survey wheel, and GPS navigation data from all of the major radar manufacturers.

Untitled Project (2006 - 2007)

Worked as a Nintendo DS gameplay programmer for a small development studio in Kyoto, Japan.

Unfortunately, the publisher has decided to shelve the finished product to make room for the newer Wii console, released within months prior to our going gold.

Unless and until it's officially announced (unlikely), I cannot provide any details.

GPR-SLICE View (2005-2006)

GPR-SLICE View is a piece of software that I developed for geophysicist Dean Goodman at the Geophysical Archaeometry Laboratory in Los Angeles, CA. It's used to manipulate and display 3D volumes of Ground-Penetrating Radar (GPR) data in real-time. Dr. Goodman's current list of over 140 clients from 21 countries includes the US Forest Service, the UK Ministry of Defense, and NASA.

Justin-Klein.com (2004-Present)

Built this website from the ground up, tying together my original code with several well-known scripts under a common look-and-feel.

The original version was built on the b2evolution blogging platform, with Gallery2 for photos and ViperGB for the guestbook. This was later migrated to Wordpress, involving a completely custom theme and the addition of many handwritten libraries including an RSS aggregator, PHP thumbnailer, AJAX map application, l10n library, and more.

The current version is the third (or actually more like fifth) iteration, with everything now running entirely on Wordpress and the Suffusion theme. All my custom functionality has been re-implemented as a set of widgets, plugins, and page templates, including a slew of new features like keyboard navigation, facebook integration, and lightbox galleries. I hope to eventually release some of these as free plugins, if I ever find the time...

Little Johnny Has Cirrhosis (2004)

A 3D online multiplayer video game that I designed and developed at UCSD. As creative and technical project lead, I personally managed our team of four programmers and one graphics artist. I also coded all client-side game logic and the graphics engine, including particle systems, 3D model loaders, camera movement, and 3D environmental sound. The finished product was delivered within ten weeks for a public demonstration before a live audience and television crew.

Quake 2 Loader & Animator (2004)

An API that I wrote for loading and manipulating 3D models based on the Quake 2 (MD2) file format. Written from scratch as a tool for Little Johnny Has Cirrhosis, this fully self-contained API handles all textures, weapons, and animations associated with a given model.

Particle Engine (2004)

An API that I wrote for handling particle effects in Little Johnny Has Cirrhosis. This fully self-contained particle engine supports point and line particle emitters, directional and single-point gravity sources, real-time level-of-detail adjustments, and more.

Bioinformatics Research Project (2004)

Software that I developed for Ph.D researcher Alexander Hoffman to visualize the chemical composition of the human cell with regards to a protein called NFkB. Dr. Hoffman's research uses complex differential equations to model how NFkB regulates the immune response in an effort to learn more about various inflammatory diseases including arthritis and atherosclerosis. My software helps to expedite his research by generating human-readable displays from large and complex mathematical data.

Airplane Simulator (2003)

A 3D interactive application that I developed for the US Department of Defense under a contract through Northrop Grumman/SPAWAR. This software connects to a piece of government hardware and receives positional data on navy battle groups, rendering the data on a relief-map of the earth. The map is generated from satellite images, and can be changed for level-of-detail in real-time.

TwoFish Encryptor (2004)

A 128-bit Twofish Encryptor/Decryptor chip that I designed in Verilog for one of my Electrical Engineering courses at UCSD.

8-Bit CPU (2003)

An 8-bit CPU and corresponding Instruction Set Architecture that I designed and implemented in XILINX. This project was aimed at providing a better understanding of low-level computer architecture and memory management, necessary knowledge for developing efficient real-time software applications.

PC-Adjunct (2003)

An application that I developed for the US Department of Defense/Northrop Grumman. It is a navy training utility used to simulate the manual controls on a ship-to-aircraft communication system. Inputs are handled via DirectX and client/server connectivity through Windows Sockets.

Windows Chat Application (2002)

A simple internet chat application for Windows. This was a personal project to teach myself the fundamentals of Windows network programming. It allows multiple users to connect to a chat room server over the Internet.

UCSD (2000-2004)

Although not really a "project," I list my alma mater here for lack of a better place to mention some of my academic engineering work:
©2004-2010 Justin Klein who's online Feedburner XHTML Valid
Best viewed at 1024x768 or higher