Included here are various samples of my work.
If you would like to see examples of a specific skill/language
please contact me and I will do my best to provide them.
Working Demonstrations
The following projects are currently hosted and you can see their working demos.
This game demonstration is a simple web-based Tic-Tac-Toe game implemented in JavaScript. It utilizes Bootstrap and jQuery on the front-end and has a JavaScript back-end.
The challenge with this project was to create an interactive game experience in which the AI could never lose.
This was accomplished by utilizing a minimax algorithm to explore at all possible future moves for a given board/player minimizing loss and maximizing gains.
In addition to the minimax algorithm, I also implemented alpha/beta pruning to greatly reduce computational times. When examining any given game path, if the result is less than ideal play the entire traversal of that path is abandoned eliminating fruitless computation only to arrive at a better game path elsewhere.
PaletteHub.com is a simple color/palette sharing site built as an all client-side JavaScript application. The purpose of the site is to allow people to easily (and from any device) create a palette of colors which they can then share with others. It utilizes Bootstrap and jQuery on the front-end and has a JavaScript back-end.
The entire site took less than 20 hours of effort and was originally created because my sister (from out-of-state) was getting married and my wife (who was in charge of some decorations for a local wedding reception) wanted to have a good understanding of what colors were being used in the wedding. Utilizing PaletteHub, they were able to share the colors for the 50's era wedding easily and from their mobile devices.
This project was my first experience with hosting multiple Node.js applications utilizing Dokku and docker on Digital Ocean droplets which was a great learning experience.
Documentation
Documentation is an important part of software development so I have provided some examples of documentation I have produced both manually as well as programatically.
The following is an example of an entity relationship diagram for an authentication service. This diagram is part of the software design process and is ultimately utilized when creating the actual data/software entities utilized by an application.
This is an example of a diagram used to visualize the different network layers used to provide high availability to the services API core.
The following is an introduction page from code-generated documentation (YUIDoc) integrated into every piece of source code created for the services API framework. Every utility, script, model, controller, etc was documented thoroughly using the YUIDoc markup language. During a software build the entire API documentation is generated and made available to developers through this interface.
The following is part of the coding style guideline document provided for the services API framework. This document is generated using YUIDoc/Markdown.
Here is an example of automatically generated documentation in the form of a code coverage report example. The services API framework build process generates a full unit testing code coverage report in the following form. Lines which are not covered by unit testing are highlighted so developers can write additional unit tests to cover them.
Here you can find the fully processed README for the services API framework which is an HTML document generated from Markdown during a build step.
Services API Framework README
Code
Below you will find source code samples from software I've written. These will give you an idea of my coding style.
This class belongs to a Force.com APEX application I built at ePrize which is now it's own company centered around the application. This particular sample is a job daemon which was used for performing scheduled tasks within the application. APEX is SalesForce.com's custom implementation of Java designed specifically to run applications in the Force.com cloud.
The following code sample is taken from the Dodge Defiance program and is part of a JavaScript utility used to serve up the Defiance Arkfall experience to end users on various web properies ranging from the Dodge.com properties to the SyFy.com property.
An embed code was provided to each of the host web sites and when the appropriate time arrived the Arkfall clue would appear on the site allowing users to find and participate in an Arkfall experience while remaining on the host property. This application was designed for very high availability as it was hosted on several very high traffic sites.
This example was taken from the services API framework build script which provides the one-step build process for services using the framework.
This sample is a basic controller used to return general information about the API version as well as to serve up a not found response in the event someone tries to hit a non-existant endpoint.
This is a good example of the YUIDoc markup as described in the documentation section above.
The following is a sample taken from a promotional application framework developed for rapid development and deployment of promotional applications. This code snippet is the application configurator class used to read in and parse a configuration JSON file and make it available to the running application.
Here you will find two Ruby samples. The first sample is a project helper module used by various applications dealing with PHP based application framework apps. It implements various methods from PHP libraries allowing additional utilities to be extended in Ruby.
This example is taken from a Ruby script utilising the above module. This particular script was used to sweep through a PHP application and determine what assets were to be delivered via a CDN and assist front-end developers in deploying their assets to the CDN.
Thank you for taking a look through my portfolio.
* All of the provided samples were completed entirely by me unless otherwise noted. All samples are the property of their rightful owners and are provided as an aide for you to visually inspect my coding styles. None of the samples provided contain any company secrets and I have made every effort to genericize all samples so each one, individually, cannot be used to reproduce any copywritten works in entirety.