Hi, I’m Allen.

Some of my most satisfying moments have come while creatively solving problems, either as a musician, artist or software developer. I love learning new things, as shown by my diverse experience with different programming languages, and by my interests in both the front end user-facing side of software development as well as the back end business side.


  • Artour

    I needed something to organize and display my artwork and photographs, so I created a custom CMS and static site generator in Elixir using the Phoenix Framework. Some of its features include: custom url slugs for posts, easily add tags using AJAX, organize images in albums using drag-and-drop, and image carousels with optional captions and lazy asset loading.
  • H-News

    I love reading Hacker News for the latest software development and technology news, but the text is too small, and it is hard to use on mobile. I created a redesigned version to address these issues using the official API to pull in the latest story and comment data through AJAX. I also added the ability for readers to pick a custom color theme that is saved using the browser localStorage.
  • CSV Parser

    A CSV parser that I wrote in JavaScript which is currently being used in production as part of a corporate LMS (learning management system). It supports quoted strings (as well as escaped quotes) and is compatible with the CSV output from Excel, Google Sheets, and Apple Numbers. It can be used either in the browser or on a server using Node.js, and includes a full unit-test suite using the Jasmine test framework.
  • Earscape

    One of my interests is the intersection of music with technology (particularly algorithmic composition), so I created this web app to generate random twelve tone melodies. I used Band.js to play the melodies and VexTab to output the sheet music.