Projects

Nothing really interesting here. Today I have very little time to start-up a project from scratch, and so I try to help (a little) existings ones.

Sofia

Books

I’m the author of PostgreSQL 11 Server Side Programming Quick Start Guide!


PostgreSQL-11-ServerSideProgramming-cover-image


I am also a co-author of another PostgreSQL book: L. Ferrari, E. Pirozzi, Learn PostgreSQL, Packt Publising, 2020 (first edition), 2023 (second edition)

Learn PostgreSQL - second edition Learn PostgreSQL book cover

I’ve also an ebook collected with lectures I’ve done on PostgreSQL for BSD Magazine under the name of Improve your PostgreSQL Skills ebook.

Coding

In the past I did mess with:

  • Aglets a Java based Mobile Agent Platform (MAF).

  • Blackcat it was my master degree thesis, renamed RoleX because university did not feel comfortable with animal names! There is no repository or source code available (because I’m too lazy to pick it back from a backup). The idea was that of doing Java class runtime manipulation on the fly as performed by other more useful tools (like persistence frameworks). Several research publications exist on the subject.

  • WhiteCat the evolution of BlackCat, again Java bytecode manipulation on the fly. Several research publications exist on the subject.

  • flap a Mobile Agent Platform that I’ve written in Java to teach to university students the idea behind mobile agents.

  • JFK trying to port signals and slots the Qt way to Java, or better a rudimental way to implement function pointers (because they don’t scare you, right?).

I did participate in the CPAN Pull Request Challenge 2015 and Hacktoberfest 2016, 2017 and 2018. I really encourage anyone else in participating in projects like those because they can teach you a lot and your time will not be wasted onto a not-so-used piece of code.

I co-founded and directed the Italian PostgreSQL Users’ Group (ITPUG) and have actively organized almost all PGDay.IT events up to the 2016 edition, also introducing (not by myself) the concept of ITPUG Lab.

Since December 2017, and for a few years, I do little contributions to the Perl 6 documentation repository.

As of 2018 I do contribute to pgenv PostgreSQL version manager and installer.

More in general I tend to keep all my projects on GitHub, so go check there!. I also have an account on GitLab and I’m considering moving to that hosting service.

I have also pushed little contributions, issues, or documentation to open source projects like the followings (in no particular order):

  • pgenv, a Bash PostgreSQL installer and manager;
  • perlbrew, a Perl environment manager;
  • pgxnclient, a Python client for the PostgreSQL eXtensible Network;
  • pgTAP, a testing framework for PostgreSQL;
  • pgBackRest, a PostgreSQL backup and recovery tool;
  • pgBadger, a dashboard for PostgreSQL log analysis;
  • pgagroal, a PostgreSQL connection pooler;
  • pgmoneta, a PostgreSQL backup tool;
  • rakudobrew, a Perl 6, Raku environment manager;
  • IO::Tee, a tee module for Perl;
  • sqitch, a database management tool.

Conferences, Seminars, etc.

Where I was learning, where I was teaching.

Google Summer of Code

  • Google Summer of Code 2024, I was mentor for the rewriting of the I/O subsystem of the pgagroal connection pooler.

Google Summer of code certificate

As a lecturer

  • Linux Day 2024, Modena, I gave the second edition of an introductory talk about Raku, titled Il linguaggio della farfallina
  • PGTraining online event 2024, free online event on April 19th 2024, italian speech titled Introduzione al linguaggio PL/Java
  • PGTraining online event 2023, free online event on April 14th 2023, italian speech titled Il linguaggio PL/Perl
  • PGTraining online event 2022, free online event on April 29th 2022, italian speech titled Gestione delle connessioni con pgagroal, slides available
  • Linux Day 2021, Modena, I gave a talk about Raku titled Il linguaggio della farfallina
  • PGTraining online event 2021, free online event on March 12th 2021, I gave a talk about PgBackrest pgBackRest (offline recorded video in italian available here)
  • PostgreSQL Interview Series, Postgres Weekly: A chat with Luca Ferrari
  • Perl Weekly Challenge, Champion of April 2020: Meet the Champion: April 2020
  • Developer on Fire episode number 449, recoded on October 22nd 2019, broadcasted on November 11st 2019;
  • On-line course Improve your PostgreSQL Skills, BSD Magazine, 2018, 5 modules
  • Seminar PostgreSQL - il database piu’ avanzato del pianeta, ConoscereLinux Linux Users’ Group Modena, 2018 (7 lessons)
  • Open Space ITPUG Lab, PGDay.IT 2013 and 2015
  • Seminar Introduzione a PostgreSQL (parte 1 e 2), PGDay.IT 2012, Prato
  • Ligthning Talk From ISAM to PostgreSQL, PGDay.IT 2011, Prato
  • Seminar Pl/Java: estendere un database PostgreSQL con Java, PGDay.IT 2010, Roma
  • Seminar PostgreSQL: un database OpenSource di classe enterprise, CONFSL 2010, Cagliari
  • Seminar Java & PostgreSQL: da JDBC a Pl/Java passando per org.postgresql.Driver, CONFSL 2010, Cagliari
  • Seminar Immagini digitali, 2009, Sassuolo
  • Seminar PostgreSQL: il database OpenSource piu’ avanzato al mondo, PGDay.IT 2009, Università degli Studi di Pisa
  • Seminar Connettività PostgreSQL da Java, PGDay.IT 2009, Università degli Studi di Pisa
  • Talk PostgreSQL: il database OpenSource piu’ avanzato al mondo, Linux Day 2008, Modena
  • Talk PostgreSQL & Java, PGDay.EU 2008, Prato
  • Talk org.postgresql.Driver: il driver JDBC di PostgreSQL, PGDay.IT 2007, Prato
  • Lecturer Programmazione JDBC, PGDay.IT 2007, Prato
  • Lecturer Paradigma ad agenti mobili: Tecnologie e Implementazioni, 2006, University of Modena and Reggio Emilia (ICT PhD School)
  • Lecturer Tecnologie ad agenti mobili,2005, University of Modena and Reggio Emilia
  • Lecturer J2SE 5: l’evoluzione di Java, 2004, University of Modena and Reggio Emilia
  • Seminar The Java language, 2004, University of Modena and Reggio Emilia
  • Lecturer Java, AWT & Swing, 2003, OT Consulting

As an attendee

  • Introduction to BSD, Introductory course, Associazione culturale Conoscere Linux (LUG), 2024, Modena
  • *Modena DevFest 2024, Modena
  • Compilers: Theory and Practice, Introductory course, Associazione culturale Conoscere Linux (LUG), 2024, Modena
  • C++ from Zero to Hero, Introductory course about C++, Associazione culturale Conoscere Linux (LUG), 2021, Modena
  • Flussi di traffico e qualità dell’aria: il progetto TRAFAIR e il progetto CLASS, Workshop a cura dell’Università degli Studi di Modena e Reggio Emilia e del Comune di Modena, 2019, Modena
  • Modena Tech Summit 2018, 2018, Modena
  • C++ Day 2017, 2017, Modena
  • Linux Day, 2008, 2012, 2017, Modena
  • Devops Day, 2014, Bologna
  • Eclipse Day Florence, 2012, Firenze
  • QtDay, 2012, Firenze
  • Sicurezza nella applicazioni Web, 2001
  • Java Day, 2010, Roma
  • PHP, PostgreSQL e Smarty per la costruzione di applicazioni gestionali web, 2008
  • Adobe incontra il mondo della ceramica. Un utilizzo specifico per il settore ceramico, 2006
  • Il linguaggio C# e la filosofia .NET, 2005, University of Modena and Reggio Emilia
  • The seventh European Agent Systems Summer School (EASSS05), 2005, Utrecht, Olanda
  • Mobile Agents for Ubiquitous Computing, prof. Ichiro Satoh, 2005, University of Modena and Reggio Emilia
  • Constructing Agent Systems, prof. Marcin Paprzycky, 2005, University of Modena and Reggio Emilia
  • Introduction to distributed Java: J2EE and CORBA, Markus Aleksy, Ralf Gitzel and Martin Schader, Las Vegas, 2004
  • Linux: problematiche dei sistemi embedded e real-time, 2003, University of Modena and Reggio Emilia

As a Teacher

  • teacher for Networking and Web classes, Elsa Morante, years 2009-2010, 2010-2011, 2013-2014;
  • teacher for Project Management classes, Elsa Morante, years 2009-2010, 2010-2011, 2013-2014;
  • assistant professor for Operating Systems, University of Modena and Reggio Emilia, years 2003-2004, 2004-2005;
  • assistant professor for Java and OOP Fundamentals, University of Modena and Reggio Emilia, years 2004-2005;

Academic

Talking about past academic projects, I’ve been member of the followings:

  • TRAFAIR (Understanding traffic flows to improve air quality), years 2018-2020;
  • MENSA (Methodologies for the Engineering of complex Software systems: Agent-based approach), years 2007-2008;
  • IS-MANET: Infrastrutture per reti ad-hoc mobili, progetto CNR-MIUR, years 2003-2005;
  • Fiducia e Diritto nella società dell’Informazione: Promozione e Tutela Giuridica della Fiducia nel Mercato, nelle Istituzioni e nell’Infrastruttura Tecnologica, progetto PRIN del MIUR, years 2004-2005.
  • LAICA: Laboratorio di Ambient Intelligence per una Città Amica, progetto europeo in collaborazione con il comune di Reggio Emilia, years 2005-2006.

Committees

  • Program Committee Workshop on Adaptative Collaboration (AC) 2011, The 2011 International Conference on Collaboration Technologies and Systems (CTS 2011)
  • Review Committee Special Session on Role Base Collaboration CTS 2010 The 2008 IEEE International Conference on Systems, Man, and Cybernetics
  • Review Committee Special Session on Role-Based Collaboration, The 2008 IEEE International Conference on Systems, Man, and Cybernetics, 12-15 Ottobre 2008, Singapore, China
  • review Committee track Trust, Recommendations, Evidence and other Collaboration Know-how (TRECK), 20th ACM Symposium on Applied Computing (SAC) 2005
  • Program Committee WETICE 2004: The IEEE 13th International Workshops on Enabling Technologies: Infrastructure for Collaborative Enterprises (WETICE), Modena, Italy, June 2004
  • Local Committee PGDay.IT, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2015, 2016
  • Local Committee PGDay.EU, 2008