Piero V.

Motion: videosorveglianza con Raspberry Pi

Questo weekend io e la mia famiglia abbiamo avuto un impegno, per cui siamo stati tutti via, lasciando la casa vuota.

Allora, ho pensato di sfruttare la mia Raspberry Pi 3, che da tempo era rimasta inutilizzata, per creare un mini sistema di sorveglianza.

Cercando su Internet, ho trovato subito un programmino molto semplice da configurare, ma anche alquanto efficace, chiamato motion.

Si interfaccia con le webcam e può registrare un video qualora rilevi del movimento. Inoltre, può eseguire dei comandi quando il movimento inizia e finisce, permettendo interessanti integrazioni. Infine, mette a disposizione anche uno stream del video stesso tramite HTTP. L’unico neo è che gli stream sono solo video, senza audio, anche qualora la webcam fosse dotata di un microfono.

Visto che usa l’API V4L2 (Video For Linux 2), può funzionare su tutti i sistemi Linux, non solo con la Raspberry. Io stesso, con la mia Raspberry, ho provato sia su Debian, che su Raspbian. Qualora vogliate comprare un single-board computer da adibire allo scopo, la lista dei dispositivi supportati da Armbian potrebbe esservi utile. … [Leggi il resto]

Esame di stato da ingegnere

Dopo poco più di 3 anni che mi sono laureato in “ICT for Internet and Multimedia”, ho deciso di abilitarmi come ingegnere. Il mio corso di laurea è andato a sostituire Ingegneria delle Telecomunicazioni all’università di Padova, ma appartiene alla stessa classe (LM27). Quindi, consente di diventare Ingegneri dell’Informazione.

Con la pandemia, dal 2020, è stata rimossa la prima prova scritta. E, anche per il 2022, l’esame si è svolto ancora con un’unica prova orale a distanza.

Personalmente, spero che rimanga così anche per il futuro. In primo luogo, secondo me, è molto più comodo. Poi, da almeno un anno si sente parlare di laurea abilitante anche per ingegneria. Se ho ben capito, d’ora in avanti, la discussione della tesi dovrebbe garantire anche l’abilitazione. In caso, mi sembrerebbe più giusto che anche chi non ha avuto questa possibilità abbia solo una discussione orale, senza lo scritto.

Molti temi degli scritti delle precedenti sessioni erano stati resi disponibili pubblicamente. Invece, le informazioni su questa modalità sono abbastanza scarse. Quindi ho deciso di scrivere questo articolo sperando di fare cosa gradita ai candidati (e di poter parlare apertamente della mia esperienza). … [Leggi il resto]

I have become a professional FOSS developer

I had the luck to get to know free and open source software when I was still a kid. In this way, the willingness to share my knowledge became a part of my culture and personality.

If you browse this site, you will see that I have shared a lot of small projects, like FlatPress plugins. However, I have never been a long-time contributor to a big project.

Moreover, at the end of my University course of study, I had to do an internship to graduate. I went to a software company that creates proprietary programs for the enterprise. I remained for six months and then was hired as an employee, and I stayed for another two years.

I was on a small team developing a CAD, and I enjoyed working with my coworkers a lot (even though I worked remotely for most of the two years because of COVID).

But I did not like using proprietary libraries.

One of them was Parasolid, a geometry kernel developed by Siemens. It is powerful, but some functions are overly complicated to use. It comes with very prolific documentation, and its subscription includes technical support. But it is the only way to troubleshoot your problems: I could never find any public information online, which is extremely surprising in the 2020s! … [Leggi il resto]

Back to Rust again

In 2010 I tried to program a video game with a friend for the first time. And it was our first time with C++, too. Of course, it was C++2003 since C++11 was the new-not-yet-stable thing.

I must say that our approach was quite naive. For example, we thought we would always play the game on a LAN. Thus, we never worried about lag compensation.

Now, a few years have passed, and I have learned a thing or two, even though I still have to finish a game project.

So, at the beginning of this year, this friend pushed me to learn Rust, and I decided to learn it through game development again.

At a certain point, I decided to use a physics engine, and I found Rapier. I was especially interested in its determinism to finally implement a lag compensation mechanism. But I did not understand how to use it correctly. Only recently, I understood it favors an approach similar to functional programming, whereas I was trying an OOP-like approach. This also led to fights with the borrow checker. So, because of these problems and my usual decrease in interest and focus, I left yet another project incomplete. … [Leggi il resto]

Another rant on emails

A pair of weeks ago, some people asked me for help because their Outlook was not working anymore. It complained that its data file had reached the maximum size.

Being a Linux user, I have never had Outlook on my machines.

I used it only at my previous job, with an exchange server. I must admit it used to work fine. It even has some appreciable features, such as the company directory, shared calendars that work immediately, etc.

So, when people ask me if I can help them with their Outlook problems, I try to answer as a courtesy. Usually, they are easy problems, and I solve them by searching for their error messages in English and translating the solution into Italian.

One of the suggested solutions for the problem was to empty the bin. But it contained almost one million emails 😨️. So, I went to the webmail and found that the webmail also has the same amount of emails to delete.

The web client also says that emails are automatically deleted after 90 days, but it contained emails from more than two years ago.

It also has a button to empty the folder… but I think it communicates to the backend through IMAP itself, and of course, it went on timeout 😄️. … [Leggi il resto]