This is the first project i made for CS424 at UIC, it lets you explore the age distribution of the population of various nations in the world and see how many of them were alive when some historical event happened.
You can find a page describing the project in detail and the application itself at this Link
This is a link to the online Repository of the Project
This is the second project for CS424 at UIC, this time it was a team based project. This application lets you display data about hurricanes in both Atlantic and Pacific Ocean. With its filters and graph this application is perfect for finding patterns in hurricanes behavior.
You can find a page describing the project in detail and the application itself at this Link
This is a link to the online Repository of the Project
This is the third and last project for CS424 at UIC, this time we are dealing with dynamic data about music. This application is composed of two main features:
A static view showing the best 10 artists and genres from 1940 to the present, highlighting their popularity over the time.
A dynamic view where two user can choose their favorite artists and the application will show them how their musical tastes are related.
You can find a page describing the project in detail and the application itself at this Link
This is a link to the online Repository of the Project
This is a project I developed along with my teammate Davide Tantillo over the course of the 2015 Fall Semester at UIC. SAGE2 is the collaborative environment developed at EVL, we were in charge of creating an application that would make possible drawing on touch-enabled screens inside the environment.
This meant dealing not only with the usual web interface but also on a good part of server related issues, since the drawings must be available in real time to every user connected to the server.
The timelapse shown above only shows the painting part of the application, but also a Whiteboard functionality is present, since the main goal of this project is to create a new generation Whiteboard that can be used in a classroom.
All the code is open source and can be found on a separated branch of the official SAGE2 Project, but we are planning to integrate it in the public available version soon.
Date:
Fall 2015
Wildlife Defense
This is a game I developed along with my friends Marco Cavallo and Andrea Rottigni during the Hackaton for Wildlife that took place in Chicago in November 2015.
The game is entirely developed in Unity and we managed to complete it in one night, it has been a lot of fun!
The goal of this game is to survive with the group of animals you control, while the evil humans "steal" your land by building cities over it.
This is the final project for my Bachelor degree, I developed it along with my friend Andrea Rottigni. It is a Java based online multiplayer game. It is based on an existing board game and we developed it completely from scratch.
This project taught me a lot about Software Engineering, Networking, and Graphics in Java.
MeteoCal
This is the project for my Software Engineering 2 class. It is a web application where a user can schedule his events, invite other users, and be notified if the weather is not gonna be suitable for his events.
This project is completely written in J2EE and JSF and it has taught me advanced topics in Software Engineering. Most of the focus was on the Software Documentation, the Cost Estimation, and the Software Design.
Altera Floorplacer
This is the project for my High-Performance Processors and Systems class. It is a graphical web interface for the floorplacing on Altera FPGAs.
The web interface is written in HTML + Javascript while the optimization script is written in Python. The optimization script is an adaptation of Marco Rabozzi's algorithm for floorplacing on Xilinx FPGAs.
The algorithm consists in creating a MILP problem that represents the floorplacing and then solving it using Gurobi's libraries.
The adaptation was complex because of the increased granularity of Altera FPGAs with respect to Xilinx. This has taught me how to deal with other people algorithms and how to try to improve it.
Quadtree Canvas
Simple JavaScript project where an image gets procedurally generated by repeatedly splitting the quadtree with the highest color variance.
Any image can be dragged and dropped into the project.