skip to content.
view text-only.

my portfolio

Below are some recent personal projects, applications from my day job, and freelance web sites.

My designs stress semantic markup, usability, and accessibility. The applications I develop are usually transactional, data-driven, and dynamic.


Today's Meet

Today's Meet, my latest project, is a Twitter/chat hybrid designed for the backchannel in classrooms, presentations, and conferences.

The server-side application is built on, and driving the development of, my own PHP MVC framework. It provides data to the user interface via a RESTful API.

The UI is designed to be simple, clean, and focused on facilitating conversation. It is a combination of XHTML, CSS, and extensive JavaScript based on the Prototype/Scriptaculous framework.

Today's Meet has been used by educators to provide an alternate method of conversation for learners in their classrooms, both to facilitate discussion and embrace UDL and accessibility.


Michigan Rehabilitation Association

I recently had the opportunity to work with the Michigan Rehabilitation Association on a total overhaul of their web site. It was great to work with an organization that insisted on accessibility and usability.

The site had an administrative area that allowed the MRA's Communications Committee to directly maintain the content, without needing an ongoing contract with a web master, which helped them drive up registration at their annual conference.

I do not maintain the content of this site.


Clients & Billing

This pro bono site for a friend helps him track billable hours and clients through a very simple web application.

He needed a simple, fast way to create and edit two types of data, so I built this application on my PHP MVC framework and was able to get him up and running in about a day.


Technology for Authentic Problem Solving

Technology for Authentic Problem Solving, or TAPS, is a searchable database of videos created by educators. We were asked to create a database of interrelated and connected resources, and a simple, effective UI that would encourage visitors to browse and share the content.

TAPS is the first application my team tackled after we dove into Rails, so, even though it is built in PHP, the archictecture was heavily influenced by Rails. Originally, it was designed to contain a variety of resources, including text, video, links, and images, but the project changed direction and focused on video.


China in a Day

China in a Day was a user-voted photo contest my office ran in China in late 2007. Visitors uploaded photos from around China, then voted for their favorites. The winning photos—with some editorial review—were printed in a book we published.

During the month-long contest, China in a Day recieved up to 80,000 pageviews per day, all with graphics content, and almost all from halfway around the world. It was an exciting project and nice to see my code stand up to a testlike that. Dealing with click fraud was a fun challenge.

This site was removed after the contest ended.


Twaveler

Twaveler is a a Twitter/Google Maps/is.gd mashup that lets you twitter a Google Maps view, and also parses out short URLs to find Google Maps latitude and longitudes.

Basically, you can click on the map and send a tweet with a short cut to that location in it. Then you can go to twaveler.com/your_twitter_name and follow a trail of all your latest Twaveler tweets.


flavr

At work, we host a number of web sites for other projects. A small number of web sites were using a disproportionate amount of resources with video transcoding and hosting, so we developed flavr to provide a dedicated, back-end video transcoding and streaming platform.

We worked with the developers of those web sites to integrate flavr into their content and administration areas.


Coffee on the Keyboard

Coffee on the Keyboard is my WordPress blog, where I write about designing, developing, and using social media and networking tools—and occasionally education, politics, marketing, or other things that catch my attention.

I use a custom theme that I tweak and nitpick continually, and several plugins—some by me, some not. You can read more about the plugins over on my projects page.