In May 2026 I had the opportunity to speak at PyCon Italia 2026 together with my colleague Igor Saggese. The talk was titled "Chatting with Data, Safely: Role-Based Authorization for Text-to-SQL Agents" . Text-to-SQL agents let users query databases in plain language — which is powerful, but also opens up real security …
Each year I run an end-of-course coding exam for a Big Data Specialist class. The setup had ossified over time: I'd hand-author the exercises, hand-grade dozens of submissions over a weekend, and hand-write per-student feedback reports. It worked, but it didn't scale — and year-over-year consistency drifted because I was the …
I had the pleasure of being a guest panelist at PyData Milan on March 18, 2026. The event was hosted at TeamSystem's office in Milan. The panel was about Managing Teams, Stakeholders and Delivery in the GenAI Era . Together with Parvaneh Shafiei (AI Manager at TUI Musement) and Alberto Danese …
In Building Evolutionary Architectures and Software Architecture: The Hard Parts , Neal Ford and colleagues introduce the concept of fitness functions — automated checks that verify whether a system preserves its desired architectural characteristics over time. The idea is simple: if you care about a quality (latency, coupling, resilience), define an objective …
The phrase festina lente —“make haste slowly”—was used by the Roman emperor Augustus as a personal motto. Suetonius reports that Augustus repeated it to his generals and administrators as a guiding principle: advance steadily, but never recklessly; act with urgency, but never without reflection. In that sense, the slogan …
I was invited to give a talk at Politecnico di Milano at Osservatorio Big Data. The event took place on November 4th, 2025, and I my talk was "Guida galattica per data product AI-ready" , which means "Hitchhiker's guide to AI-ready data products" . I shared the experience we had at TeamSystem …
I just moved the git repo of this blog from an old conda+pip based setup to using uv . On Mac, start by brew install uv Then, I initialized the uv project and just imported the dependencies specified in the requirements.txt file. uv init --python 3 .13 uv add …
I've been speaking at Codemotion for the first time in October 2025 thanks to the work done over the last months at TeamSystem. With my colleague Mattia De Leo, we presented our recent work on building AI assistants based on knowledge graphs and large language models. The talk was well …
I've been for the first time at Big Data London in September 2025. I gave a talk with my colleague Andrea Romeo about a challenging task we faced at TeamSystem. We developed an offloading of thousands of SQL Server tenants via CDC (Change Data Capture) to a data lake via …
I am currently reading "AI Engineering" by Chip Huyen and am really enjoying it. I spent some years as data scientist in the past, and now I found some analogies between data science and AI engineering. The analogy is in the way the industry is talking about the discipline and …
“ Wanna bet? ” triggers us to engage in that third step that we only sometimes get to. Being asked if we are willing to bet money on it makes it much more likely that we will examine our information in a less biased way, be more honest with ourselves about how …
I've created a toy Lakehouse Monitoring in Databricks setup to explore its features and capabilities. The goal is to understand how it works and what benefits it can bring. Here's an overview of what I cover in this post: How to Setup a toy Lakehouse Monitoring Dashboard Alerts Pricing My …
I was looking for a resource to get a deeper understanding of MCP (Model Context Protocol). Rather than looking for resources or books, I opted for RTFM. Actually not the MCP manual as I would not have fun reading protocol specs. I took FastMCP and went through the docs. I …
Shallow Work: Noncognitively demanding, logistical-style tasks, often performed while distracted. These efforts tend not to create much new value in the world and are easy to replicate. Cal Newport gives this definition of how I spend part of my work-time in his Deep Work book. Checking emails, messaging on Teams …
I celebrated 10 years since my graduation trying to giving back somthing I learned about our industry to students. I was invited by Prof. Francesco Calimeri from UniCal to hold a seminar to students at the last year of MSc. in Computer Science and AI. A couple of pictures from …
I had a lot of fun (and work) over the last 6 months working or organizing a conference, Py4AI. The conference was held in Pavia, Italy, on March 16th 2024. The conference was a success, with over 200 attendees and 12 speakers. The conference was organized by a group of …
Why bothering reading a book about design of web APIs when working in data science like I do? I found this book called The Design of Web APIs by Arnaud Lauret and decided to give it a try. Why reading it Data science is shifting towards turning models and solutions …
When you work as a data analyst or data scientist (I'll use the terms interchangeably) in a company, you may not be training predictive models every single day. A significant (and often interesting) part of your job is answering business questions via data mining regardless if you do it with …
I was recently guest at a new podcast called "DaGrande". The podcast was launched by Stefano Bosisio and aims at helping students that are near to conclude their studies. "DaGrande" consists of a series of interviews where professionals from a variety of industries share tips or insights abuot career that …
The picture below was taken just at the beginning of the exam of the course called Apache Spark for Data Analysis at ITS Rizzoli in Milan on November 2022. I was the one taking the picture because I was actually the lecturer of this course. In this post, I'll tell …
I went back to PyCon IT 2022 in Florence in June. I gave one talk called Why Is Our Project Late? where I introduces mental and statistical bias that lead us to make wrong estimates when making a plan. Furthermore, we held a live session of Intervista Pythonista podcast interviewing …
I was invited by Python Biella community to hold a webinar introducing PySpark on Databricks (in Italian). You can find the video below and the code here .
I have been working quite some time with charts and business intelligence in the last 5 years. When you spend time building business reports, you may perceive data visualization as a cold technical and business tool. However, there are 6 hidden gems in data visualization that I found by chance …
On May 2021, the first episode of my first podcast went live. The podcast is called Intervista Pythonista and is co-hosted with Cesare Placanica . Cesare and I are members of the Python Milano community that helped us to kick-off the idea. Why podcasting? I am a heavy podcast listener. I …
I've been working with Scrum framework over the last 18 months, and I thought it was time to test that what I was doing was real Scrum or kind-of-Scrum. I decided to take the Professional Scrum Master I certification exam to test my knowledge of the framework. Which certification? Where …
Designing Data-Intensive Applications by Martin Kleppmann was not a quick-read. Let me be clear, it is not such a long book (the paper version is 400 pages), but it is so dense of information that takes some time to go through. The book covers indeed a broad spectrum of data …
How many data engineers should we hire? Are they too many compared to our data scientists? One of the key decisions to take when building a data science team is the mix of roles . This means choosing the right mix of background and of activities that each member of the …
I'm now part of a data and AI team in a fintech spinoff. When I joined the company, it did not make sense to spend time in defining precise job titles because we were to build everything from scratch (both software, teams and organization). My job title was therefore a …
The first Covid case in Italy was found on February 21st 2020. A couple of weeks later we were entering the lockdown with this number of new daily cases. The number of Covid-19 new cases was growing really fast every day. We had no clue about what was going to …
While studying for the Azure Data Scientist Associate certification, I took notes from Building AI Solution with Azure ML course. In this single page, you'll find the entire content of the course (as of 18th August, 2020). This page is a small support for those preparing for earning the certification …
This is an error I encountered when I have a Spark Streaming job running on Databricks 6.1. Consider the case I have to update a running streaming query. Databricks recommends to always start (and restart too?) a streaming query on a new dedicated cluster. However, in some scenario you …
My side project atacmonitor features a new guise. Data is now being collected for all bus and tram lines in Rome. Data pull is achieved via Python functions running on AWS Lambda. Data is then stored in MongoDB hosted in MongoDB Atlas. Atlas also provides the charts in the page …
Rather than construction, software is more like gardening— it is more organic than concrete. You plant many things in a garden according to an initial plan and conditions. Some thrive, others are destined to end up as compost. [...] You constantly monitor the health of the garden, and make adjustments (to …
The Signal and The Noise by Nate Silver is a must-read book for those interested in predictions. It is not a technical book. You will not learn any algorithm. However, it presents a series of real-world scenarios when predictions did work and where predictions did not work. The book is …
Yesterday, I gave a talk Python Milano Meetup . The Meetup was designed as Python pills: three 20-minutes talks in a row. The talks: Superset: data visualization at AirBnB - Marco Santoni Java Vs Python - Cesare Placanica pdb in action - Lorenzo Mele Very nice talk of @Airbnb #Superset with @MrSantoni at #PythonMilano …
What does it mean to work as a data scientist in manufacturing? What is the value behind data? Data science has gained popularity in domains like internet, but the industrial production domain has specific requirements. I gave a talk at Data Driven Innovation about the specific challenges when doing data …
I received valuable feedbacks by Jim Nasby regarding the post about weighted random sampling with PostgreSQL. I will report here Jim's email. Sadly, Common Table Expressions (CTE)s are insanely expensive, because each one must be fully materialized. So in your example, you're essentially creating 5 temp tables (one for …
I have just launched atacmonitor . It is a website providing information about the waiting time at bus stops in Rome. Overview The datasource is live data about bus waiting time of ATAC, Rome's public transport company. The transport office provides public API with real-time data. I have implemented a simple …
I have migrated my blog. It is built under Pelican , a static site generator. It allows me to write posts as plain markdown or even Jupyter notebooks. I then use GitHub Pages to version and publish the blog. I am continuing to use Aruba as domain provider. It is sufficient …
I have attended the IEEE Big Data 16 conference in Washington DC. I thank my company for sponsoring the trip. The conference included a special symposium dedicated to manufacturing. The symposium hosted some participants of the Bosch Production Line Performance competition from Kaggle. 2016 IEEE International Conference on Big Data …
You have a table like the following: CREATE TABLE weights ( color varchar primary key , weight float ); INSERT INTO weights ( color , weight ) VALUES ( 'red' , 8 ), ( 'blue' , 3 ), ( 'green' , 10 ), ( 'yellow' , 10 ); The table lists the weights associated with certain colors. Imagine a weight representing how much you like that color. Now …
This post contains the code that I used in my talk at Python Milano Meetup on June 22nd 2016 . The talk was a quick overview of Pipeline , a nice API by scikitlearn to abstract your machine learning algorithm. It is based on the Boston Housing Data Set . We'll just load …
I use Ubuntu 16.04. Sometimes, when I double-click a .deb file, the installation program does not work. What often solves the problem is installing it from terminal. sudo dpkg -i my_deb_file.deb sudo apt-get -f install
#DeepLearning introduction and enterprise architectures using #H2O - first #DataScienceMilan meetup! - https://t.co/I8LsfaFJSu — Andrea Scarso (@andreaesseci) May 18, 2016 A new Data Science meetup is out in Milan. Two talks about Deep Learning were given in the first event. Neural Networks and Deep Learning: An Introduction. @MilanHighTech . The first …
Imagine you re-designing your e-commerce website. You have to decide whether the "Buy Item" button should be blue or green. You decide to setup an A/B test, so you build two versions of the item page: Page A which has a blue button; Page B which has a green …
I have just joined PyData conference in Florence, and I will list briefly some interesting insights. Oh my... We are already overcrowded @pyconit and it's *just* the beginning!! 🎉🎉 good job guys! 🙌🏻 #pycon7 — (((Valerio Maggio))) (@leriomaggio) April 15, 2016 Time Travel and Time Series Analysis with Pandas and Statsmodels, @hendorf …