Matthew Danskey

Coding and living.

Portfolio

My GitHub activity is not limited to what you see. I've been rather preoccupied with projects in private repositories from mid-November to early February:

Let's take a look at what I've been up to.

EHR Encounter Interface

This was a prototype application with the goal of making it easier for doctors to take down information (including with voice). The encounter would then be sent off to an existing Electronic Health Records system.

I worked extensively on the frontend, which was coded in CoffeeScript using Brunch with ChaplinJS and Handlebars templating.

Using Chaplin helped organize the code in the project and keep it manageable. The longest file was under 250 lines. Its mediator for publishing and subscribing to events is pretty slick. It is still maturing, though, and the documentation does leave something to be desired. Once you know what you're trying to do, looking at the source code for that particular function is advised.

The backend was a Rails 4 API that ran on JRuby and Torquebox. I became familiar with it as I occasionally needed to tweak or fix various API endpoints I was accessing via AJAX calls.

TUPP

URL: http://tupp.com/

A legacy e-commerce site targeted at selling touch-up paint pens.

I had the pleasure of fixing some issues with and adding some features to this site. It gave me a new appreciation for writing maintainable code and following good practices in general, by showing me many ways of how not to do things.

For example, to properly add a new user type to a polymorphic table and the administrative interface, I had to create or edit twenty one files.

It's quite interesting to dive into a project that's already written and figure it out.

Internal Sales App

I added RESTful endpoints for two resources in a Rails 4 API, complete with tests written with RSpec and factory_girl. Functionality of said enpoints included uploading images with carrierwave.

Vagrantfun

URL: My fork on GitHub

A project to simplify and standardize the use of vagrant at my contract workplace

I'm currently working on making a Vagrantfile with appropriate Chef-solo cookbooks so that developers (especially on the frontend) can run 'vagrant up' and be off to the races. Properly setting up a Rails backend running on JRuby and Torquebox attached to a Postgres database on a personal machine (for example) can take a fair bit of doing -- and potentially lead to inconsistent behavior due to this or that being different. Vagrant could make this a non-issue.

One person doing all the setup for a team of 6 could save a fair bit of time -- especially if someone else has to jump onto the project later.

It targets Vagrant 1.1.0 right now; however, new point releases are coming out rapidly -- with 1.1.2 released not a week later. Once that settles a little bit I'll update it.

On the side: Determined Mountain Goat

This is the activity logging application I'm currently developing.

URL: determined-mountain-goat

pre-Alpha 0.0.02a screenshot:

The picture is from the scrapped Rails 3 version. I'm currently writing a python API with Flask that will communicate with an AngularJS frontend.

It's meant to track one or several actvities over a long period of time, and then give visualizations, metrics, and potentially inferential statistics on the data. It might be helpful for tracking progress or seeing if there's a pattern that leads to a long break.

You can find the current iteration's api here