Desktop & Mobile Apps
-
MPOSplitBatch
C command-line application
This C program for Unix/Linux/Mac systems is a derivative work from the original program mposplit by Christian Steinruecken. The original was meant to extract individual JPEG image files from the Multi-Picture Object files produced by commercial 3D cameras. I enhanced the original application by adding the ability to take as input not just a single folder, but a mixed list of files and folders, and to recursively descend folders of MPO files, making batch processing of large collections much easier.
Download MPOSplitBatch source code
Download original mposplit source code
February 2012 -
Bonsai3D
iPhone app
I created an app that simulated in three dimensions the growth of a bonsai (traditional Japanese miniature sculpted tree). The layout and functionality were coded in HTML and CSS3 (making extensive use of CSS 3D transforms), which ran inside an Objective-C iOS app using the UIWebView class.
The app allowed users to select one leaf or branch at a time, and had two main tools- clock and shears. Using these tools, the user could choose to grow another branch from the selection, rotate the selection into a more pleasing position, or prune away the selection. An online gallery feature also allowed customers to post their bonsai generated within the app to my website for public display. The app was available in the iOS App Store for nearly a year.
Visit user-submitted Bonsai Gallery.
August 2011 -
TinyMoteDesktop Widget (written in XML & Javascipt)
As the name implies, this widget is meant to be a very compact remote control to help manage many common day-to-day tasks.
It's primary function is as a customizable search bar, which can be preset to a variety of search enguines, & allows you to type search terms before opening your browser, thus saving you a step in the search process. Right-clicking on the magnifying glass image beside the search field presents a menu with different search sites to choose from. Users can set the search menu to display only sites that they regularly use, making it quicker to select a site. A logo is always displayed beneath the search field indicating the currently selected search site.
It's second function is as a more compact controller for the Safari web browser (Mac only feature). With TinyMote open you can hide the button bar on Safari windows, reclaiming that screen space, & use the smaller forward, backward, & stop/reload buttons on the widget instead.
TinyMote has 3 buttons (forward, backward, & play/pause) to control music playback in iTunes. When the mouse moves over them (if iTunes id currently open), the currently playing track information will be displayed. Both the iTunes controller buttons & the Safari buttons turn grey to alert the user when the associated program is unavailable.
The left-most 3 buttons are for organizing files (Mac only feature). When a file is dragged onto the (+) button, it is organized by moving it to the appropriate folder based on its filetype (pictures to pictures, documents to documents, etc.). When a file is dragged onto the (-) button, it is archived for later use. When a file is dragged onto the (x) button, it is moved to the trash. Clicking on the (x) button will empty the trash.
August 2005 -
Paper
Desktop Widget (written in XML & Javascipt)
Paper is a simple widget for writing notes on one's desktop, basically the digital equivalent of a post-it note or a small piece of paper. The unique features of this particular note widget is that it omits unnecessary clutter found in most other programs (such as wide margins, scrollbar, or titlebar), saving space on your screen. It is resizable by dragging the triangle on its lower right. The background opacity & font size are adjustable. When run on a Mac, it will also read its contents aloud (command-enter) or execute unix commands (command-space) typed into it & return the results.
June 2005