PortaleTNG

 portale2E’ il portale web per la gestione presenze del gruppo per cui lavoro (almeno… ci ho lavorato fino a fine 2013… per il 2014 le cose ancora sono nebulose e oscure).

Portale1

Scritto in VB.NET, ahimè (all’epoca non usavo ancora C#) e utilizzato inizialmente per gestire le anagrafiche del personale, le timbrature, la registrazione delle eccezioni, la reportistica, le previsioni per ferie/permessi/assenze, l’assegnazione delle persone ai progetti, i conteggi dei costi aziendali e dei ricavi. Successivamente ho aggiunto anche la possibilità di gestire ordini, offerte e fatture per tutti i progetti del gruppo. Un’ultima aggiunta è stata la gestione di alcuni asset aziendali (automobili, principalmente). Ci sarebbe stato tanto altro da aggiungere, che è stato previsto in fase di creazione delle basi dati, ma l’azienda mi ha destinato ad altri incarichi quindi tutta quella parte è rimasta una grande incompiuta.

Come qualcuno mi ha già fatto notare, per usare un eufemismo, la grafica fa pena. Lo so, è vero, come ho già scritto altrove nel sito io scrivo codice, e non ho assolutamente occhio per la grafica, per le combinazioni di colori e per tutto ciò che è “estetica” in generale, quindi ho semplicemente messo un paio di colori di fondo per le varie sezioni dei menù e fine.

Successivamente, a scopo didattico, ho creato TNGClient: un client dedicato per Android per la parte di timbratura, e l’annesso web service.

Portale Prospera

ProsperaE’ il CMS che gestisce l’area privata dell’associazione Prospera (questo è il link al portale pubblico).

E’ un progetto interamente personalizzato, utilizzato come “contenitore” per tutte le attività dell’associazione: documenti societari, progetti, gruppi di lavoro, elenchi logistici per l’organizzazione di riunioni e assemblee, e via dicendo.

Il portale è stato in seguito dotato di un’area “questionari” per sottoporre ai soci interviste di vario tipo, ed è inoltre stato aggiunto un modulo per gestire tutto il workflow dell’elezione del consiglio esecutivo durante le assemblee, con supporto per le deleghe e per le votazioni offline.

Viene gestita anche la procedura totalmente automatizzata per il rinnovo delle quote sociali con pagamento tramite carta di credito.

 

OrariSP

TN_OrariSpReportFullHo scritto molto tempo fa questo software per gestire i fogli presenze dei consulenti nell’ufficio dove lavoravo.

OrariSP era composto da un client scritto inizialmente in Visual Basic con archivi Access (che dava un sacco di problemi: avrei anche voluto migrarlo verso un db mysql ma sarebbe stata un’impresa non da poco, e “per fortuna” il software è stato dismesso prima) e da una serie di report web-based, generati dinamicamente (nella foto se ne vede uno… o meglio… si vedrebbe se non fosse solo una thumbnail… ce la metto appena ne trovo una decente… sorry). Una cosa che invece sono riuscito a fare è stata migrarlo in dotnet.

Tra le caratteristiche principali vi sono:

  • Sistema di mail integrato.
  • “Giornale di bordo” personale, per tenere traccia dei propri lavori.
  • Gestione completa dei piani ferie e delle relative prenotazioni, reports ferie organizzati per gruppo o per ufficio, con previsioni per i turni e le ore lavorate.

ZProject.NET

zprojectclientfullUn completo sistema di Instant Messaging IP-based con server centrale e/o connessione diretta, completo di gruppi, history, allarmi, messaggi multi-destinatario e broadcast, ed un sistema di chat multicanale IRC-like: un capolavoro, insomma. Soprattutto se si pensa che la primissima versione risale ad un’epoca in cui ICQ ancora non era nemmeno un pensiero lontano e anche netmeeting doveva ancora essere concepito)

Il nome Zproject.NET ha una storia travagliata: era originariamente “Project1” (Il nome del progetto di default in Visual Basic… non ho mai avuto fantasia con i nomi e all’epoca non mi prendevo nemmeno la briga di scegliere un pianeta dalle carte stellari di Starfleet)

Ma anni fa, nell’epoca di Windows 3.1 e Visual Basic 4.0, c’erano problemi con l’ordine di caricamento di alcune DLL. Per farla breve, Project1 doveva essere l’ultimo programma caricato dal sistema all’avvio. Il modo più semplice per farlo in automatico, è stato quello di dargli un nome che iniziasse per Z … quindi … “ZProject1” (what else? :) )

Nel 1999 l’applicazione è stata completamente riscritta, e ho trasformato l’ “1” in “2000” perchè ho messo in produzione quella versione il primo gennaio 2000.

Un ulteriore major release del software nel 2004, ed ecco il nome ZProject 2004(niente da invidiare alle numerazioni che la Microsoft appioppa ai vari windows)

A causa dell’end of life di parecchie delle librerie utilizzate, ho fatto un porting del client in dotnet, e quindi l’ultimo e attuale nome è diventato, guarda un po’, ZProject.NET.

(Questo per dire che se mi chiedete un software, preoccupatevi prima di trovargli un nome ;) )

MiniGraph

E’ una piccola utility che ho scritto in quanto mi serviva qualcosa in grado di monitorare al volo il carico di lavoro su alcuni webserver senza dover litigare con i vari tool di graphing.

Ho colto l’occasione per giocare un po’ con il .NET SDK, e MiniGraph è quello che è venuto fuori. Visto che può tornare utile in vare occasioni, ho poi deciso di rilasciarlo in pubblico dominio.  

Informazioni dettagliate cliccando qui.

Avatar

maintconsoleAvatar è un sistema distribuito ridondante per la pubblicazione di informazioni. Un modo simpatico per indicare un sistema che pilota un gran numero di monitor informativi in giro per i palazzi, controllandone i palinsesti centralmente, controllandone lo stato, pilotando correttamente accensione e spegnimento di proiettori, eccetera.

E no, Cameron e il suo film non c’entrano nulla, anche perchè sono arrivati 4 anni dopo la nascita del “mio” Avatar.

Il nome è un tributo al capitano Avatar, dell’astronave Yamato (Argo, nel doppiaggio italiano) del mitico anime degli anni ’70 Star Blazers.

Avatar ha una sua paginetta di dettaglio, che si trova qua.

SMaSher

Questo è un aggeggino molto simpatico destinato a sostituire gnokii come software di pilotaggio dei modem GSM sui nostri sistemi di invio di SMS di allarme e segnalazione.

Scritto in java, gira sotto linux, se ne sta buono buono in background, legge da una tabella MySQL i messaggi da inviare, e provvede ad inserire in una seconda tabella gli eventuali messaggi ricevuti dal/dai modem (di suo ne gestirebbe un gran numero, ma il numero di porte seriali era limitato all’epoca… USB non era ancora molto diffuso, e quindi si doveva andare di porte COM legacy).

Niente screenshot, dato che SMaSher non aveva nessun tipo di interfaccia utente.

E a proposito di modem GSM… Il maledetto formato PDU!

MG (Magazzino Gomme)

MGUn piccolo aggeggino fatto in Java (così per installarlo dal committente si è potuto usare un piccolo ed economico PC con Linux) per gestire comodamente, tramite un lettore di codici a barre, un magazzino di gomme per autoveicoli.

(Lo screenshot è del progamma in esecuzione sotto windows)

Monitor ATM e Monitor TP

monitoratmDue applicazioni scritte per tenere sotto controllo i parametri operativi dei CICS e dei bancomat della banca Sanpaolo.

Ogni applicazione è divisa in due parti: la prima parte è un programma Visual Basic che gira a ciclo continuo, recuperando le informazioni dall’host tramite connessione 3270 e le inserisce in un database. La seconda parte è una serie di pagine ASP che mostrano lo stato dei TP e dei bancomat, con la possibilià di registrare nel database quale operatore sta seguendo il problema.

Hanno girato impassibili per anni, 24 ore su 24, 7 giorni su 7, aiutando l’help desk di Sanpaolo a intercettare i problemi prima che se ne accorgessero gli utenti.

Tugh

tughE’ il software che Getronics (ex Olivetti, o Wang Global, o Tecnost, insomma… la parte dei servizi, sopravvissuta dopo che la Olivetti era stata uccisa da una letale pozione composta in parti uguali da scarsa lungimiranza e di malafede) ha utilizzato per anni per gestire gli ordini e la fatturazione verso la banca  Sanpaolo. Era un compito estremamente complicato dato l’enorme numero di voci in capitolato, convenzioni, stanziamenti, sconti, conteggi particolari e via dicendo.

Scritto in Visual Basic, con archivi Access (necessari, dato che il capitolato viene fornito in quel formato) e con qualche trucco per gestire l’accesso concorrente ai files .mdb, Tugh incorporava una nutrita serie di reports e un sistema di backup automatico distribuito (da quando un utente è riuscito non so come a distruggere il database e tutte le copie!!!!!)

Il nome Tugh non è chissà quale acronimo misterioso, ma deriva da un episodio di Star Trek TNG.