On GitHub Copilot

Like everyone else on the planet, I’ve been following GitHub Copilot since its launch. It is an impressive achievement and a remarkable milestone for the deep learning industry, that’s for sure. We are obviously at the early stages in deep learning applied to software development, and it is somewhat unsettling to ponder what the future might hold in this field. Like many others, however, I worry about code quality issues and the risk of license infringements1. »

I am a Mars Helicopter Contributor

As I was browsing my RSS feed this morning, I came across a new blog from Nat Friedman over at GitHub. The piece was titled “Open source goes to Mars”, and, of course, it caught my interest. In the article, Nat announced a Mars 2020 Helicopter Mission badge added to GitHub profiles contributing to open-source projects and libraries used by Ingenuity. Some time ago, like many others, I was granted the Arctic Code Vault badge, so I am familiar with the concept. »

Why doesn’t GitHub talk about their product roadmap?

Software development is mostly horseshit. We’re busy trying to build things, trying to estimate when things are done, trying to work with other humans to make sure you don’t break anything when you launch. All of these things can go horribly, horribly wrong without much malice or without much intention. It’s still very difficult. via Why doesn’t GitHub talk about their product roadmap? »

Author image Nicola Iarocci on #github,

Champion Pythonista

La Open Source Report Card è un’iniziativa divertente. E’ difficile resistere al richiamo dell’ego… soprattutto quand’è smisurato. Nicola is a champion Pythonista (one of the top 11% most active Python users) who loves pushing code. Nicola is a nine-to-fiver who seems to work best in the mid-afternoon. »

Gestione degli Eventi in Python

Gli eventi sono molto usati nelle GUI e nelle implementazioni del modello MVC (Model, View, Controller). Un’altra applicazione tipica è nei protocolli di comunicazione, laddove layer di basso livello devono informare quelli più alti quando ci sono dati in ingresso o in uscita.

Il linguaggio C# dispone da sempre di una soluzione elegante al problema della gestione degli eventi: il delegato EventHandler. Events è una mia implementazione Python del EventHandler C#. In pratica si tratta di una classe molto leggera che incapsula il cuore del meccanismo di sottoscrizione e gestione degli eventi, e tenta di farlo in maniera “naturale”, sembrando parte integrante del linguaggio Python.