toggle menu

my projects In this page I keep track of my various projects involving computer science and computer programming. They are rawly ordered by year and by category.


PlanetSourceCode (2003-2004)At the beginning of my programming experiences I posted some of my works at http://www.planetsourcecode.com.

You can find some of my (very old!) projects at this page or zipped here.


Coreutils (2006) Back in 2006 I did contribute the --group-directories-first option to the 'ls' GNU coreutil. Here's the link to the coreutils ML.


wxWidgets programming (2003-2009) wxWidgets is a powerful library and an open source C++ toolkit for cross-platform Graphical User Interfaces (GUI). I've submitted a good number of patches to wxWidgets project: you can browse them here. In 2007-2009 I have been one of the wxWidgets developers and I worked in many areas of the library (new widgets: wx*PickerCtrl, wxCollapsiblePane; documentation of wxWidgets, bugfixing, etc). I've been involved in various open-source projects related to wxWidgets:

wxWidgets
  • MathStudio: an attempt to build an easy-to-use CAS
  • wxCode: a repository of wxWidgets addons
  • wxArt2d: 2D drawing facilities
  • wxLua: Lua bindings to wxWidgets
  • wxGlPlot: a plotter for 2D/3D mathematical functions


wxCode (2005-2009) I have created various components for wxWidgets hosted by wxCode and written in C++:

wxCode

I also redesigned the wxCode website together with other wxCode administrators and coded it in PHP.
You can see the updated list of components I'm working on using wxCode website's search function.


Bakefile (2007-2009) To create all build systems for my software packages I use Bakefile: it's a fantastic cross-platform, open source makefile- and IDE projects- generator. I created the bakefiles for various libraries; unfortunately not them all have been integrated in the official releases of the libraries so I provide them as separate download here; to download those bakefiles which have are now official part of the related projects you should refer to the projects website:

  • wxCode bakefiles (integrated in the project)
  • wxArt2D bakefiles (integrated in the project)
  • wxDockIt bakefiles (integrated in the project)
  • MathStudio bakefiles (integrated in the project)

...they all contain a readme file which explain how to use them.
For wxWidgets-based applications or libraries I've also created a generic bakefile which can be easily used with just few customization and also some other utilities:

I've contributed various patches to Bakefile: you can see them here.


Google Summer of Code (2006-2007)On summer 2006 and 2007, I also partecipated to the Google Summer of Code with wxWidgets projects: the wxWidgets package manager and the XTI metadata completion.

GSoc

It was a very nice experience, also because of the great help I received by my mentor, Julian Smart. Thanks to both Google, Julian Smart and wxWidgets team!


Firefox addons (2009-2012)I'm not a fan of XUL programming but I'm a great fan of Firefox ;)
Recently I needed to to extend its functionalities and thus I took some time to create my own Firefox addon. As almost all Firefox extensions, it's written in a mix of JavaScript and XUL. The code was initially hosted by Mozdev.org but later I moved it to this page on Sourceforge.

Firefox

In December 2009 the first public version, 0.3, was released. I've been updating this extension for some time; next TODO item is perhaps to convert it to a Chrome extension!


MATLAB contributions (2009-2013) During my PhD I have been writing ton of MATLAB code regarding the wide fields of: a) signal processing (in particular for radio and inertial signals), b) modelling of localization system signals, c) statistical estimation (e.g., imeplementation of maximum-a-posteriori estimators for specific problems), d) pattern recognition.

MATLAB

Even if most of that code is specifically tied to my scientific research, a part is generic enough to be useful to others; for this reason I'm (slowly) posting on the MATLAB FileExchange page some of my most general-purpose code.


Games (2009-2014) I did create also a couple of simple games (I may open-source them in the future) using Unity3D; I contributed a simple Hermite Spline Controller that you can find on my user page on Unity3D wiki.

Unity3D


Misc projects (2009-2015) Other miscellaneous projects I created or where I collaborated:

  • EmfPrinter: a virtual printer driver for Windows 2000 and Windows XP, which allows you to generate EMF and WMF
  • muParser: fast math parser library
  • UsbPicProg: a free and open source usb pic programmer
  • NetlistViewer: a tool capable of loading SPICE netlists and convert them in a schematic (i.e., graphical format)
  • OphMedRecords: a simple ophthalmic medical records archival software


GitHub small projects (2015-2019) Some smaller utilities I created and hosted on GitHub are:

  • Large PCAP analyzer: a simple tool to handle large files containing captured traffic (e.g., TCP/IP)
  • CPU-MEM-monitor: a simple script to log Linux CPU and memory usage over time and output an Excel-friendly report.
  • Light Media Center: a simple, light and fast collection of scripts, configuration files and web code to implement a basic media center capable to run on single board computers like Rasperry PI, BeagleBone, OLinuxino, etc.
  • rpm-make-rules-dependency-lister: a small tool to allow incremental RPM packaging, useful to speed up your deployment chain when you are packaging several RPMs
  • rpm-spec-dependency-analyzer: a simple Python3 script to generate a DOT graph of the inter-dependencies among a set of SPEC files
  • malloc-benchmarks: simple benchmarking scripts to run on any machine to compare different C/C++ malloc implementations.

All other projects I contributed to are listed on my SF profile page (older) and my GitHub page (newer ones). A few more github-based projects I have contributed to are:

  • ZMQ: the fastest middleware for modern message exchange!
  • eclipse-bash-editor: Bash editor plugin for eclipse