Portfolio

Below are samples of some of my past work.  Next to each, I’ve included a description of the highlights of my contribution.

It’s worth noting, I was the sole software developer on every project on this page. I took each one of these products from early concept to completion and publication.

Web Apps with Rails

Wishing Whale

Wishing Whale

Wishing Whale is a universal gift registry, much like a wedding registry but geared more toward any gift-giving event (like birthdays and Christmas).  It helps you:

  • Know the perfect gift ideas for family and friends
  • Avoid duplicating a gift someone else already purchased
  • Keep track of what you’ve bought and whom you still need to shop for
  • Publish your own wishlists of gifts you’d like to receive
  • Provide alternate gift ideas if something is unavailable
  • Restrict who can see your wishlists

As the sole software developer for the application, I was responsible for the “full stack”, everything from the structure of the database to the user experience of the front end.

Wishing Whale makes extensive use of my MVCoffee open source framework for performance enhancements, auto-updating when a wishlist was modified on another device, and drag and drop interactivity.

Open Source

MVCoffee

MVCoffee

MVCoffee is a suite of tools that help make a website behave more like a native mobile app, making it faster and more interactive in the browser.

The tools are mostly geared toward use in the Rails world. It takes advantage of Turbolinks and provides a model layer on the client that mimics ActiveRecord, complete with has_many and belongs_to associations and validations.

The central part of the framework follows a development pattern called “Model-View-Controller”, and is written in the programming language CoffeeScript (thus the name, Model, View… Coffee).  It’s to some degree inspired by how native iPhone apps are written, which use this MVC pattern as well.

incodesert

incodesert

incodesert is a tool for inserting snippets of source code into other pieces of code. (See what I did there? I inserted the word “code” into the word “insert”. Yeah, it’s geeky…) It’s useful for mixing hand written code with auto-generated code. This is a big part of my philosophy: to auto-generate as much as possible to reduce development time. If you can’t auto-generate the entire project, this tool makes it easy to fold what can be auto-gened into what can’t.

Mobile

I don’t develop for mobile any more, but I include these for a couple of reasons. One, they demonstrate my breadth as a developer. Experience developing native mobile apps influences the way I approach web projects. I believe it gives me a perspective pure web devs don’t have. Two, I’m just darned proud of them. We put a lot of love and work into them, so I keep them around for posterity sake.

For all three of these apps I was the sole software developer, and for the two games, I produced a fair amount of the procedural artwork. They are all available on Android and will be republished on iOS soon. And everything is available free of charge, even the once in-app purchases. Enjoy them with my compliments!

GolfCap

GolfCap

GolfCap is a mobile golf handicap calculator. You can use it to find out your new handicap index right on the 18th green.  Plus there are graphs of how well you are progressing as a golfer.

The graph features are all totally custom, coded by me from scratch.

Space Carom

Space Carom

Space Carom is an 80’s arcade style action game that plays a bit like billiards in outer space.  That is, if you were playing pool with spaceships and moonlets.

The billiards-style physics engine is custom, developed entirely by me.

Quintgel

Quintgel

Quintgel is a falling puzzle piece game inspired by a couple of 80’s classics, but with the challenge cranked to a new level.

All the backgrounds are “carved” out of the same piece of virtual marble. The rendering of the artwork was automated by my own code generation system and inserted into the source code for both iOS and Android using my incodesert open source utility.

WordPress Plugins

Whenever I find the need for the same functionality in every site I work on, it makes sense to break it off as a reusable plugin and share it with the world. I hope you find these useful.

Natural Contact Form

Natural Contact Form

Natural Contact Form provides contact forms for your site that are easy to create and use. Here’s what it offers that (most) other form generators don’t:

  • Each email message you receive looks and feels like someone emailed you directly (instead of having the usual “Name: So And So, Email: …, Message: …”), with the “reply to” set properly so you can just respond to the message… naturally.
  • Built in “honeypot” spam protection.
  • Optional “Page Guard” lets you disallow direct navigation to the “thank you, your message was sent” page unless the contact form really was filled out. This allows you to use a contact form as a gate for a lead magnet download.
  • Optional integration with 3rd party email service providers. Make your contact form double as a “contact me” and an opt-in.

Plus, it’s free!

Content Sectioner

Content Sectioner

Content Sectioner is a developer plugin that makes it easy to break one piece of page content into multiple sections, insert artwork, and add additional markup with a simple and concise notation. In other words, it allows the site owner and content authors to use the Visual editor to write pages without being burdened by formatting markup like div tags. It does this by taking advantage of WordPress’s content filtering feature, and relieves you (or your developer) from rolling your own pattern matching code (regular expressions in nerd talk) and string substitutions.