3D assets, images, and easy-to-build source for most of my work.

I am a strong believer in open-sourcing whatever I can so that others may learn from my work, as I have learned from countless others.


Safer transportation via checkpoint-based route notifications for friends and family

Mergesort in C

A cute implementation of mergesort in C

Bokeh Bouquet

Rendering sakura flowers with custom bokeh effect in PBRT (Stanford CS 348B)

Gradient optimization for inverse kinematics

Inverse kinematics is one of the hardest problems in robotics. Given desired goal position and orientation for an end-effector, inverse kinematics seeks to find a suitable series of joint configurations to meet that goal. In this paper, we develop a forward kinematics model in Python and apply gradient-based methods using automatic differentiation to develop an inverse kinematics model of an arbitrary $n$-joint robot arm. We evaluate the performance of standard gradient descent against Nesterov Momentum gradient descent. We conclude with a discussion of the limitations of our 2D model and areas for extension to gain more fidelity with real-world robots.

Review of modern industrial design

A talk given to high school students through CLOUD Rainstorm (a Splash program run by Learning Unlimited)


Finding inner peace


Exploring the world


The best way to find yourself is in the service of others.

Design factors for database query domain-specific languages (DSLs) in object-oriented languages

Most applications that interface with a database are written with object-oriented programming (OOP) languages. Many applications use SQL databases to persist data. There exists an ‘impedance mismatch’ between the use of object-oriented systems that act on objects of non-scalar values and the storage of scalar values (e.g. strings and integers) organized in SQL tables.

Intelligent agents for industrial workers

An adventure into the venture formation world

Remembrance Agent for Java

Java-based implementations of a remembrance agent, a continuously running automated information retrieval system, based on work by Bradley Rhodes of MIT Media Lab (1997). Available as a standalone, no-dependency Java/Gradle project and as a desktop graphical user interface (GUI) featuring integrations with Google Cloud Speech APIs, Gmail, Google Drive, and locally-stored plain text (.txt) or Markdown (.md) files. Open-source and freely-available under the MIT License. Under active development.

 Watch

Modeling, texturing, rendering my favorite product

Glass Notes

Take notes on Google Glass!


Modeling and texturing an alien abduction scene


Modeling, texturing, and animating an iPhone XS Max

Bus Stop

Experiments with emissive materials and volumetric fog

Laser Cut Chess Board

Deconstructionism is fire 🔥


Wearable RFID verification system for logistical order-picking


Smart wearable technology to end campus violence

This site is open source. Improve this page »