Hi, I’m Allen.

I deliver creative solutions to problems using software. Some of my other interests include creating digital and analog art, photography and playing and writing music.

Projects

  • Dithermark

    Web app that allows you to quickly and easily transform photos into original pixel art. It includes variations on many popular image dithering algorithms, as well as original color quantization algorithm research. Built with Vue, it uses the Canvas API, Web Workers, WebGL and the Unsplash photo API for random images.
  • Reason Sound Pack Viewer

    Reason+ is a subscription service that allows users to download sounds and presets in the form of sound packs for use in Reason. Using the desktop companion app, subscribers can view and download the packs, but non-subscribers and users that don’t have the app are limited to the Reason+ share site. I reversed engineered the API, and used Vue to create a fully featured single page app so users can quickly and easily preview all the sound packs.
  • WebAssembly Error Diffusion Dither Performance Comparison

    Web app built with Vue that allows the user to compare the performance of JavaScript against WebAssembly generated from C++, D, Rust and Zig for dithering an image using the Stucki error diffusion algorithm.
  • Capricornus Squadron

    2D turn-based strategy browser game in the style of Advance Wars. I created the custom game engine, user interface and music while acting as the lead developer for two other students. Uses the browser Canvas and Web Audio APIs. While playable using touch input, for the best experience a mouse is recommended.
  • Chess Scout

    Opening preparation is a key component of chess success. I built an app that uses the Lichess API to download a player’s games and visually display their opening repertoire and statistics. This can be used to prepare against tough opponents or to evaluate your own strengths and weaknesses. Built with React, it uses a custom PGN parser and chess rendering engine to display chess games using the browser Canvas API.
  • Umbrella CMS

    A project created using Elixir and the Phoenix Framework to house various custom content management systems (CMS). These include organization for book and movie reviews, bookmarks, my music library, inspirational quotes, artwork and photography.

    It is structured as an umbrella project, which allows the advantages of a monolith, as projects can easily share code and use the same instance of the BEAM virtual machine for increased efficiency, while also having the flexibility of microservices, as each sub-project can have its own dependencies and configuration. Each sub-project uses the same custom authentication middleware, which allows the sharing of users for an SSO-like seamless authentication flow. It also includes custom mix (scripting) tasks to import and convert images for my photo library and to generate the static site for my artwork at strangescenery.com.

Social