This section contains the code for some personal or university-related projects.

**Image Rectification**

Written in Matlab. Link redirects to the Bitbucket repository.

This implements image rectification.

**Semantic Similarity**

Written in Java. Link redirects to the Bitbucket repository.

Trains a model for computing the semantic similarity of two tweets, and applies it to a validation set of tweets retrieved from the Twitter API. Prints the degree of accuracy reported on the validation set. Based on a pre-existing algorithm.

**Syntax Sugar**

Written in PHP.

Highlights and shows your code on your webpage!

**Giudoku**

Written in C and GTK+.

A small program which solves Su Dokus puzzles.

**Play Python Poker**

Written in Python and Qt.

Play poker with your computer.

**File baker**

Written in C and GTK+.

Find files on your hard drive.

**JFileBaker**

Written again in Java and Swing.

Does the same thing as above, although it's not quite completed it does its job.

**Sha Matrix**

Written in Python.

Compute the product of two matrices.

**DeathSwing**

Written in Java and Swing.

Computes the determinant of a matrix using a recursive Laplace formula.

Not the most efficient algorithm, but I wanted to have fun with recursion a bit. Now with a GUI!

**Turtle graphic**

Written in C.

A simple implementation of the turtle movement in a room, resembling the old Turtle Graphic.

**Shainer's Clock**

Written in C and OpenGL.

A little simulation of an analogic clock. You can give the starting hour as a command-line argument.

**Expression Parser ** (looking for a better name)

Written in C.

An expression parser implementing the Operator Precedence parsing algorithm (see Algorithms section for an explanation).

**T9 LookAlike**

Written in Python.

A T9 interpreter to print out words matching numbers like for mobile phone buttons. You can find the Italian dictionary to test it here.

**WeightedAverage**

Written in Python and Qt.

Simple script to compute a weighted average for an university student.

**DPLL**

Written in Java.

An implementation of the DPLL algorithm for the SAT problem (see Algorithms page).

Written in Matlab. Link redirects to the Bitbucket repository.

This implements image rectification.

Written in Java. Link redirects to the Bitbucket repository.

Trains a model for computing the semantic similarity of two tweets, and applies it to a validation set of tweets retrieved from the Twitter API. Prints the degree of accuracy reported on the validation set. Based on a pre-existing algorithm.

Written in PHP.

Highlights and shows your code on your webpage!

Written in C and GTK+.

A small program which solves Su Dokus puzzles.

Written in Python and Qt.

Play poker with your computer.

Written in C and GTK+.

Find files on your hard drive.

Written again in Java and Swing.

Does the same thing as above, although it's not quite completed it does its job.

Written in Python.

Compute the product of two matrices.

Written in Java and Swing.

Computes the determinant of a matrix using a recursive Laplace formula.

Not the most efficient algorithm, but I wanted to have fun with recursion a bit. Now with a GUI!

Written in C.

A simple implementation of the turtle movement in a room, resembling the old Turtle Graphic.

Written in C and OpenGL.

A little simulation of an analogic clock. You can give the starting hour as a command-line argument.

Written in C.

An expression parser implementing the Operator Precedence parsing algorithm (see Algorithms section for an explanation).

Written in Python.

A T9 interpreter to print out words matching numbers like for mobile phone buttons. You can find the Italian dictionary to test it here.

Written in Python and Qt.

Simple script to compute a weighted average for an university student.

Written in Java.

An implementation of the DPLL algorithm for the SAT problem (see Algorithms page).