dsmDB is a prototype of distributed DBMS. The DB runs entirely in the main memory of a cluster of nodes, ensuring durability, transactional consistency and transparent distribution.
dsmDB: a distributed shared memory approach for building replicated database systems (pdf)
A performance analysis of our first prototype: pdf (by Daniele Sciascia, Software Performance 2008)
More details coming soon...
A collection of open source implementations of the Paxos, a family of protocols for solving consensus in a network of unreliable processors.
The project consists of two simple Erlang implementations and two C/C++ static libraries implementing Paxos and FastPaxos.
Episode is a framework to produce rich graphical web applications (like Adobe Air or MS Silverlight) without the use of Flash!
Episode is written in Smalltalk with Seaside and produces scripted SVG graphics.
The first goal of the project is to export existing software engineering/visualization tool to the web, but it can also be used to develop an application from scratch.
Development of content-based protocol for distributed networks of tiny wireless sensors. (MicaZ motes running MantisOS)
Implementation of Direct Diffusion and other protocols with the goal of comparing against DV-DRP.
TuxGuardian is an application firewall for Linux by Bruno Castro Da Silva. It's mission is to identify and control every application that tries to use the network.
TG is composed of 3 parts: a kernel module that uses the SELinux Framework to intercept application accesses (i.e. listen and connect syscalls), a daemon that a system administrator can use to setup systemwide security policies and a front-end that is used by the user to monitor applications and take decisions.
My contribution was never integrated in the main tree but it was fun anyway!
Screenshot of TG in action.
Mac Web Control Center (WMCC)
MWCC is a tiny PHP framework to control your Mac computer via web. It presents live information and allows actions, mainly using Applescript.
It can be used to launch desktop actions on a computer running in server-mode (i.e. with no mouse and keyboard attached).
The Mac OS X (10.4+) Dashboard eats in terms of memory, network and CPU, sometimes its just useful to turn it off.
DK is a tiny utility for Mac OS X Tiger/Leopard to switch the Dashboard on and off with a click.
I wrote this app just for fun, play a bit with Java and Swing which i was learning during my second semester at university.
DashboardKiller has more than 10'000 downloads on MacUpdate
Build a USB fan
How to keep your laptop cool!
Why spending 30+ euros for a USB fan, when you can build it yourself with less than 5?
An useful bash script to organize GnuPG encrypted files.
Trough a very simple command-line interface it's possible to add, edit and search in the stored files.
This comes handy to manage the million of web/mail/computer/... accounts and passwords.
Screenshot: (left) searching 'mail' in the store and then selecting a file to view. (right) a 'list' command.
A wrapper script for the sshfs filesystem of MacFuse. Allows you to maintain multiple servers with custom configurations in a single file, then mount them selecting from a simple list.
This script is the simpliest anti-theft program I could come up with, it can help tracking a stolen laptop.
It monitors IP addressess (interfaces and public) of the machine and posts them on Twitter whenever they change.
SvnCrawler is a tool for analysis of SVN repositories.
SC is structured as a framework, the core takes care of fetching versions and dispatching them to the loaded plug-ins for data extraction.
It is very simple to create extensions that produce an RSS feed or a CSV report to be visualized in Excel/GnuPlot/Matlab/R/...
A number of plug-ins are already included.
SvnCrawler is a shellscript for bash, should work on any UNIX system and even on Windows within Cygwin
Software Design And Evolution 2008
A C/C++ memory pool to replace malloc/free, includes a configurable reference-counting garbage collector. MyLLOC comes in different flavors:
static: non thread-safe, maps directly to memory for a smaller overhead but cannot defragment the chunks.
dynamic: thread-safe, adds a level of indirection to the chunks to allow the garbage collector to move them, similarly to what one may find in a Java VM for example. Supports different GC policies.
Team: Christian Ponti, Steve Sosio - Operating Systems 2006
This document is intended as an practical, example-driven introduction to the wonderful world of Erlang.
It covers the main aspects of the language, some efficiency hints and historical notes.
Report, examples source and a slide presentation here
Programming Languages 2007
A 3D traffic simulator developed with AgentCubes.
Sometimes the way semaphores, their timing sensors and different urbanist approaches may improve our everyday (driving) life.
Trying in practice different scenarios is time and money consuming or even impossible, the purpose of our project is a graphical and real-time simulation, a better way to model and try different approaches.
The user can create maps using basic blocks in a sim-city like environment, configuring various parameters of the workload.
Different metrics that may adversely impact the drivers are plotted in realtime inside the map, this way is easy to spot points more prone to traffic jams and reorganize them.
Team: Jacopo Malnati - Atelier on 3D Graphics 2006
Wall Street Search
An information retrieval system built with Ruby on Rails on top of Lucene.
Wall Street Search (WSS) is a search engine built specifically to help journalists search among published articles of the Wall Street Journal.
It is built as a web application to provide access from everywhere through a simple web browser, it uses AJAX features to make the search session as simple as possible
Team: Franco Sellitto - Information And Knowledge Management II 2006
AIESEC is the biggest student organization worldwide, local committees (LCs) are distributed all over the planet organizing stages, internships, projects, public events, parties...
The objective of PIME (PeopleInteractionMadeEasy) is to become the central resource manager for the within-LC organization and knowledge sharing.
Directly from the browser you get shared calendar, mailing list tool, address books, wiki, forum/news, icx/ogx-tracker (sorry, that was aiesec-speak) and much much more...
Try PIME now!
no registration required,
use USER:demo, PASSWORD:demo
Team: Karim Moussalli, Daniele Sciascia, Yuval Sharon - Atelier On Web Applications 2006
LasSienas is a Java framework for Peer-to-peer distributed application, it includes a sample "Casino games" module. It is built on top of the Siena network
"Siena (Scalable Internet Event Notification Architectures) is a research project aimed at designing and constructing a generic scalable publish/subscribe event-notification service. The technical basis of Siena is an innovative type of network service called content-based networking".
Team: Karim Moussalli, Renzo Russi, Franco Sellitto - Net-Centric Computing 2006
A very simple multi-host web server written in Scheme
PanoramX is a an Java filemanager for Mac OS X. If you can remember of norton commander/windows commmander/midnight commander, that's the style.
Plus it includes some "special" features like a web browser, transparent ZIP archive manipulation, console terminal, text editor, image preview and much more...
Team: Christian Caggiano, Renzo Russi and Franco Sellitto - Programming fundamentals II 2005
SmashTheCastle is a real-time strategy game written in Scheme. Build up your army and go conquer!
Features 4 types of creatures, special units, advanced A.I. and amazing graphics!
Team: Aleardo Cossi, Franco Sellitto and Damiano Vedova - Programming fundamentals I 2004
Informatica per tutti
Interview with Jacopo and Lorik about our summer projects. Swiss Radio ReteTre after Lugano Communication Forum. [Baobab, aired 19 April 2007].
A fashion site (to be) from Gianluca Giussani and Richard Baumgartner