Introduzione
Una volta usavo Excel. O meglio: vivevo dentro Excel. Task, ore, clienti, ticket… tutto lì dentro, insieme a mille email sparse e copia-incolla infiniti.
Poi ho scoperto GitHub Projects, Issues e un po’ di Python, e oggi il mio sistema lavora per me — quasi da solo.
In questo post ti racconto il passaggio da un workflow totalmente manuale a una struttura automatizzata, scalabile e integrata, costruita passo passo (e senza spendere un centesimo).
1. La fase “Excel, salva tutto”
All’inizio era tutto in fogli:
Task per cliente → foglio1.xlsx
Ore lavorate → colonna G
Ticket → estratti da email
Documentazione → ovunque, tranne dove serviva
Problemi? Quanti ne vuoi:
– Dati duplicati, errati o dimenticati
– Nessun controllo versioni
– Nessuna visione d’insieme
– Report mensili da costruire a mano
Funzionava. Ma era tutto fragile, lento e stressante.
2. Il salto: GitHub come task manager (e non solo per codice)
Ho cominciato a usare GitHub Projects come se fosse Trello, ma meglio:
Un repo per ogni cliente
Board kanban per task
Ogni richiesta → una Issue
Uso di etichette e milestone per gestire priorità e scadenze
Il risultato?
→ Centralizzazione
→ Riduzione errori
→ Integrazione con il codice e la documentazione
Ma qualcosa mancava ancora:
ore lavorate, notifiche, report… tutto ancora manuale.
3. Python entra in gioco: automazioni pratiche, zero fronzoli
Con qualche script ho iniziato a leggere i dati da GitHub e scriverli dove mi servivano.
Cosa ho automatizzato davvero?
- Generazione report ore lavorate da etichette (
2h
,3h
, ecc.) - Invio email automatico ai clienti con stato ticket
- Dashboard con GitHub Pages per visualizzare i task aperti
- Esportazione dei dati in Excel, già pronti per la contabilità
Mini script reale:
“`python
import requests, pandas as pd
TOKEN = “TOKEN”
REPO = “utente/repo”
API = f”https://api.github.com/repos/{REPO}/issues”
HEADERS = {“Authorization”: f”token {TOKEN}”}
issues = requests.get(API, headers=HEADERS).json()
dati = []
for i in issues:
ore = sum(int(l[‘name’].replace(‘h’, ”)) for l in i.get(‘labels’, []) if ‘h’ in l[‘name’])
dati.append([i[‘title’], ore])
pd.DataFrame(dati, columns=[‘Task’, ‘Ore’]).to_excel(‘ore.xlsx’, index=False)
“`
Risultato?
Un Excel generato in 2 secondi, con dati sempre aggiornati.
4. Oggi: tutto gira da solo (o quasi)
Sistema attuale:
- GitHub Projects = gestione task
- GitHub Issues = sistema ticket
- GitHub Actions = notifiche, chiusure automatiche, reminder
- Python = reportistica, dashboard, connessione a Excel/Sheets
I clienti?
Possono vedere lo stato dei loro ticket da una pagina pubblica
Ricevono aggiornamenti automatici
Non serve neanche che usino GitHub
✅ Conclusione
Risultato?
– Zero copia-incolla
– Zero report manuali
– Zero ore perse a rincorrere dati
Tutto è organizzato, accessibile e scalabile, senza bisogno di tool a pagamento.
E tu? Da dove puoi partire?
– Crea una board GitHub per i task
– Prova a trasformare una richiesta cliente in una Issue
– Scrivi il tuo primo script per leggere dati e generare un report
Un passo alla volta. Ma il tempo risparmiato, ti assicuro, si nota già dopo una settimana.