Joe Tortorello - Portfolio

Please note that this is a static copy of my portfolio. I maintain a version online that I regularly update with new projects, and remove ones that are old or no longer important to me. If possible, please see the online version at instead of this static copy.

Here are some projects I've worked on recently. Some were for school assignments, others just for personal use.

If you see something to want to know more about, please don't hesitate to contact me at


Kickstats was a project to explore data from the Kickstarter crowd funding platform, with the goal of determining which properties of a project influence its level of success.

There is a full description of the project at

Firefox and Thunderbird Packager Scripts

I got tired of the Debian packages for Mozilla Firefox and Thunderbird always being out of date compared to the official releases, so I build a script that builds a package for the official release of each.

Firefox:, Thunderbird:


GroupPay is an application that allows for payment-sharing within small groups of people who share resources purchased by one member. The purchaser of the items enters them into GroupPay, and marks what other members used the item. Those users will then recieve a notification regarding how much they owe and to whom. Users can connect their PayPal accounts to allow other users to pay them electronically.

GroupPay is currently in use and is live on the Internet at Please contact me for access to a demo account.

Ladybug Chase

Developed jointly with Tanner Nielsen.

Ladybug chase is a browser game that uses JavaScript to do drawing and animation. It can be played on a computer or mobile device. The goal is to eat as many aphids as possible without being touched by the frog.

You can play it at

Guitar Player App

This is an electronic guitar simulator that I developed for an algorithms class. It is a good demonstration of how we can use algorithms to model real musical instruments.

More information and download at

Drawing Tiles in JavaScript

Modified from original code by Leon Tabak

A demonstration of drawing tiles in JavaScript. This was produced for a class called Programming Language Concepts, and demonstrates some of the principles of functional programming languages like JavaScript.

You can view the result, but the source code is probably more interesting.

For this project, I was also asked to demonstrate the use of the documentation tool JSDoc. You'll see the documentation comments in my code, and you can view the compiled JSDoc here.

Self-Hosted E-Mail

I may be one of the last few people who has set up a personal e-mail server. There are many components to be attended to in doing this. Of course, you need your basic mail transfer agent (I used Postfix), but in a modern environment you also need remote access for your users, signing so other email servers can verify that mail from your domain is genuine, some system for anti-spam, and more. This is a project that I began in high school and by now I have pretty much all the features of any big hosted provider such as Gmail. If you want to see it in action, just send me an e-mail!


JamesFarm is a simple farming simulator game that uses minimal JavaScript. While the entertainment value of JamesFarm leaves something to be desired, it acts as a proof-of-concept that exclusively server-side applications are still very viable in modern browsers. A small amount of JavaScript is used to draw parts of the user interface only — all the game logic is in PHP.

You can play JamesFarm at, but it is not optimized for mobile devices.