Daniel Mills

Portfolio

Most of these projects are on my github. I will present an overview here.

vectorgraphics.online

source code

This was my first real website I put online. The goal was to have an online tool where one could make free vector graphics to use as a logo or something of that sort. Looking back at the code 2 years later, it is certainly not structured in a way I would structure it now. That said, it gives me a good reference point to see how much I have progressed. It looks pretty good for my first web app.

Base 64 Encoder and Decoder Extension

source code

This is the only project I have made that has gotten any real attention. It is currently on the chrome extension store with 400 downloads at the time of this writing. Users can select any file from their computer to convert it to a base-64 string. Alternatively, one can paste a base-64 string into my extension, and convert it into the proper file. It will attempt to preview each file; however, not all file types are supported. This has been a project that I pick up and put down every so often - especially since it has active users!

danielmills.org

My website is my most recent project built with Ruby on Rails and JavaScript. I learned a lot about server side technology while working on this site. The source code is not available.

Browser-Based Audio Mixer

source code

I made an audio mixer using the Web-Audio API which runs in the browser. This is something that I built while trying to learn the Web-Audio API itself, so I haven't dedicated much time to making it production ready. Despite its lackluster appearance, the mixer features master gain, a highpass and lowpass filter, equalization for high, mid, and low range frequencies, and several effects including delay, reverb, and distortion. Its capabilities will increase as I continue to work on it.

Performance Profiler

source code

This tool tests the time it takes for different languages to run a selected algorithm on a target platform. How the trial is performed is up to the user, and the results are stored in an output file so he can conveniently compare the differences. This program is implemented as a batch file for Windows and a shell script for Linux. The languages tested are as follows: C, C++, Ruby, JavaScript, and Python.

HTML 5 Game Engine

This engine runs off of JavaScript. I haven't released the source code because it isn't finished. I am working on a game with a friend that we might actually make progress on soon enough... Regardless, I have learned a lot of math as it relates to video games through this ongoing project. My goal is not specifically to enter the game industry - I like hardware too much - but it sure is fun!

Closing Notes:

My projects are clearly most often oriented towards or implemented in the browser. This is simply because I am more comfortable with that API when I want to build projects that require a GUI. Instead of learning more API's and boilerplate code to learn other platforms, I have focused on learning better programming practices and simply deal with browsers when I need to build a GUI. Learning something like QT or QML may be useful, but I will have to learn those in my upcoming classes. I have written plenty of code for other runtimes, but they are typically for school or for me to learn instead of becoming polished projects akin to those I have displayed here.


Written: 25 Oct. 2019 | Updated: 03 Nov. 2019

Home