This page contains links to descriptions of client work, my current github, and numerous other projects.  Front-end technologies used in these projects vary from Actionscript 3/Flex 4 to native JS to Typescript and Angular 2.  If you want to check out my work, this is the right page, so have fun :)

Sanitized Data Visualization projects (release to discuss/client names removed/synthetic data)

Javascript, Typescript, and Angular 2 (over 100K lines of code, all open-source)


Client Work

Graphic Freeform Functions and Derivatives (Explore Learning)

Graphing Non-Functions (Explore Learning)

Unit Conversion Gizmo (Explore Learning)

Measuring Volume Gizmo (Explore Learning)

Flex 4 Learning Game (Voyager Learning)

Function Graphing Engine (Explore Learning)

XML-based Map System (Origin Designs)

Ripple Tank Gizmo (Explore Learning)

ADE Freethrows Product – Flex 4 project – (Part I, Part II, Part III)


Freehand Drawing Library

FDL Cubic Bezier Spline

Editing a cubic bezier spline

Quadratic Arc Decorators

Geometric Shapes

Arrowed Arcs

Arrowed Lines

Image Painting

Dotted Line Decorator

Dashed Line Decorator


Spark/Flex 4 demos

Tron Clock – Styling, skinning, dynamic drawing, integration of artist-generated assets … and more :)

Custom Animation Clases and Path Animation – How to create a custom Spark Animation applied to path animation.

Dynamic FXG from Actionscript – Creating an AS ItemRenderer from artist-supplied FXG.

Custom Preloader in FlashBuilder


Cardinal Spline Series

Part 1

Part 2

Part 3

Part 4

Part 5


Quadratic Hermite Curve Series

Quadratic Hermite Curves Part 1

Quadratic Hermite Curves Part 2

Quadratic Hermite Curves Part 3

Quadratic  Hermite Curves Part 4


Misc Demos

Dynamic Bezier Spline Scroller – Illustrate the use of a quadratic Bezier spline to dynamically draw an organic scroller track and thumb.  Companion demo illustrates how to use splines to bound the width of an element.

Bezier Curvature Explorer – Illustrates computation of the extrinsic curvature of a quadratic Bezier curve, natural parameter at maximum curvature, and displays osculating circle.

Rotate point collection about another point – Illustrates how to rotate an arbitrary collection of points around another, fixed point in 2D space.

Arrowed Bezier – How to draw a quadratic Bezier curve with arrows at each end.

Quadratic Bezier Curvature – Extrinsic curvature of a quadratic Bezier.

Drawing Circular Segments in Actionscript – Because it’s fun and the math can be easily extended to any other interactive language that provides drawing primitives.

Rotating a box around an arbitrary interior point – A little trig, some geometry, plus some vector math illustrates how to solve a problem in a language-independent environment.

Updating Dragging Bounds After a Rotation – or, showing what really goes on behind the Flash getBounds() method in case you want to to this in JS or any other environment.