Design Ideas, Experiments, and apps in progress…

Most of the projects below are works in progress, some are examples of past work that won’t be updated. The best way I know to get comfortable with a concept is to write something with a goal in mind. I like to keep examples around for a couple of reasons: one, to gauge my growth as a developer, and two as a codebase. I frequently dip back into old projects to revisit an idea for a newer project. The Photowheel project has been around almost five years now, and is a good example of my growth as a javascript author. All of the projects load into iframes, so navigation works within each site, but there are no back and forward buttons.


This is an angularJS app intended to be a drop in solution for video editors organizing deliverables on LAMP stacks. No database is required, as each instance of the app saves its data to JSON files, and no Apache configuration is necessary, but there’s no authentication built yet either. The assumption is that the media files themselves would be ftp’d to the server. When I wrote this a few years ago, I wasn’t all that familiar with PHP uploads, so there is no uploader. The player and controls are standard implementations of the HTML5 video API.

Open in a new window

photowheel - 2015

This project started in 2011, about nine months after I got my iMac, and all the images were hardcoded. Now it dynamically reads from a root folder and pulls collections (folders) and the image files within them, creates thumbnails for any images that don’t have them, has an autoplay feature, and HTML5 audio. The most recent round of updates made it fully responsive by leveraging the CSSOM. A PHP multi file uploader and favorites collections are on the way, so stay tuned.

Open in a new window - v1

In early 2013 I decided to build myself website. I hadn’t yet discovered WordPress, so I thought I’d build an single page app. The original idea was to build the site as a collection of articles with some boilerplate around them so that if the browser didn’t support the HTML5 history API, then the pages would still load as individual linked pages. While this approach actually works, I wasn’t familiar enough with .htaccess files to pull it off with pretty URLs. In any case, fleshing out an SPA with my own implementation of the history API, and building a scripting system with jQuery AJAX taught me a lot. I never launched it, because parts of it were always changing, and I didn’t know if the base code would stand the test of time.

Open in a new window