mercoledì 14 dicembre 2011

E laurea fu!

E' fatta...il traguardo rincorso per 6 anni e 2 mesi (giusto per essere precisi) è finalmente stato tagliato! Una soddisfazione immensa quando il prof mi ha nominato Dottore Magistrale in Ingegneria Informatica...adesso si che sono un ingegnere di quelli seri :) E dopo la proclamazione ovviamente gli occhi lucidi un pò di tutti i parenti, della mia ragazza e anche i miei perché ti rendi conto che finalmente ce l'hai fatta, che tutte quelle ore passate sui libri, tutti quei progetti, tutte le ore in laboratorio, tutte le lezioni noiose interminabili, tutti gli esami (scritti e orali), tutte le mail inviate ai prof alle quali non hai mai ricevuto risposta, tutte le camminate sotto pioggia o neve a -6° (arrivando in classe completamente fradicio e doverci restare per tutta la giornata) o sotto il sole a +35°, tutti i treni assurdi che hai dovuto prendere e tutte le corse fatte per non perderli ti hanno portato a questo...stupendo! La festa poi con gli amici non la dimenticherò mai...le foto con amici e parenti in tutte le possibili combinazioni, gli abbracci, le congratulazioni, la ghirlanda, il vestito, il papiro, il pomodoro, il ketchup, la farina, il vino, la ceretta, l'annuncio in mensa...tutto bellissimo e poi il rinfresco tutti assieme!

Adesso però è già arrivato il giorno "dopo" e a mente lucida ti rendi conto di una cosa...ti rendi conto che è finito un capitolo importante della tua vita, un capitolo che non tornerà mai più, che in un qualche modo sei sceso dalla giostra dei "ragazzi che stanno ancora studiando" e che adesso dovrai salire su un'altra giostra non sapendo esattamente cosa aspettarti...intanto una cosa è certa, per questa nuova giostra il biglietto te lo sei guadagnato...ma porca miseria...quanto è stato divertente guadagnarselo.


lunedì 12 dicembre 2011

Tesi - La resa dei conti

Ok, tutto quello che era da fare è stato fatto...domani mi laureo. Al momento sono abbastanza terrorizzato, ho ripetuto svariate volte la presentazione ma la paura più grande è che mi facciano domande. Comunque,  mi devo assolutamente ricordare di respirare durante l'esposizione per non andare in apnea (che non sarebbe simpatico) , non dimenticarmi niente e non incasinarmi. Probabilmente domani sera rileggerò questo post e dirò "ah ah ero tanto preoccupato per niente"...non sarebbe male! Vabbè, che dio me la mandi buona (anzi buonissima) e incrociamo le dita!

ps: speriamo anche che il tempo sia buono come dicono le previsioni perché al momento sta "leggermente" piovendo.

venerdì 14 ottobre 2011

Tesi project/21

Ok è passata una vita dal mio ultimo post! Sono andato parecchio avanti nel frattempo:

  • è stata completata la parte dei task sia sul telefono che sul pc;
  •  sono state aggiunte le notifiche in tempo reale, quindi se cambia qualcosa,come l'orario del volo,arriva una notifica;
  • è stata aggiunta la possibilità di vedere le varie attività commerciali filtrandole per tipo e posizione (al momento sto aggiungendo la possibilità di vedere anche la posizione sulla mappa usando però solo immagini statiche);
  • è stata aggiunta anche la mappa degli arrivi;
  • sono stati aggiunti dei monitor informativi in giro per l'aeroporto e quando mi avvicino,se è stata abilitata la funzione,vengono visualizzare delle informazioni riguardati il mio volo.
  • ho tolto i tab perchè non mi piacevano e ho messo un menù classico di android che è molto meglio.
Questo è quello che ho fatto; al momento quindi mi resta di aggiungere la possibilità di vedere i tempi di attesa alle code e sistemare qualche piccolo dettaglio e poi direi che ci siamo con gli obiettivi che ci eravamo posti a inizio tesi.

sabato 17 settembre 2011

Tesi project/20

Oggi dovrei aver terminato la questione mappa,cioè sul telefono c'è un bottone che una volta premuto visualizza sul pc la mappa e da lì posso spostarmi; dalle prove che ho fatto sembra funzionare correttamente. Il prossimo passo è quindi quello dei task...che dire...bene così! Una volta che sono riuscito ad avviare Jade su sto cavolo di telefono le cose sono andate molto meglio; alla fine Android non è difficile come ambiente di programmazione e usandolo mi stanno venendo in mente molte cose che si potrebbero fare...peccato non avere un mio telefono con cui fare qualche applicazione una volta finita la tesi.

venerdì 16 settembre 2011

Tesi project/19

Oggi sono andato dal prof per fargli vedere le ultime cose e ha detto che va tutto bene. Negli ultimi giorni mi sono concentrato su Android: grazie alla guida che uno degli sviluppatori mi ha mandato sono riuscito a far collegare l'agente sul telefono nella modo più corretto attualmente possibile. Poi ho iniziato a disegnare un pò le interfacce e ho quasi finito la parte di connessione al sistema. Poi voglio sistemare la parte dei task sempre sul telefono.

venerdì 9 settembre 2011

Tesi project/18

Allora ho finito la parte degli aggiornamenti,quindi adesso quando avviene un cambiamento nell'orario del volo o del suo stato oppure nel numero del gate,compare una notifica sul mobile. Mi sono scritto le cose che mancano e come potrei implementare,ovvero:


### visualizzazione sulla mappa ###
posso creare una cartella pubblica su dropbox e poi uso i link per scaricare le immagini della mappa dove sono segnate le varie cose; nella realtà avrò i link a un server locale da cui scaricare le immagini (così funziona anche con il telefono)

### lista negozi ###
basta mettere in file tutte le info e poi eseguo una ricerca al loro interno(mobileManagar) e poi invio i risultati al mobile

### tempi di attesa ###
il mobileManager ogni tot tempo chiede ai vari mobileManager la "loc" attuale; sapendo le loc dove si trovano i vari servizi riesco a ottenere una stima dei tempi di attesa; un'alternativa è quella di creare una tabella dentro il systemManagerDB che tiene le statistiche e da lì posso andare a prendere i dati.

Vorrei anche iniziare con il telefono e settimana prossima mi dovrei trovare con il prof.

giovedì 8 settembre 2011

Tesi project/17

La situazione android migliora di giorno in giorno...siccome ieri uno degli sviluppatori mi aveva detto come correggere i problemi che avevo ma mi aveva consigliato di usare la nuova guida che però non ho trovato da nessuna parte e lui oggi me l'ha mandata per mail (a sto punto credo in esclusiva visto che nel sito non c'è da nessuna parte)...domani gli dò un occhio così da usare la maniera migliore per utilizzare Jade su android. Intanto oggi pomeriggio ho iniziato a progettare il sistema di notifica dei cambiamenti nel db; ho deciso al momento di includere solo aggiornamenti sul volo visto che comunque poi si tratterebbe solo di aggiungere altre cose ma mi sembra inutile visto che non lo dobbiamo vendere.

mercoledì 7 settembre 2011

Tesi project/16

SIIIIIIIIIIIIIIIIIIIIIIII!!!!!!!!!!!!!!!!!!!! Ci sono riuscito...Android finalmente è stato battuto!!!!!!!!! Cosa non andava? Intanto dovevo inizializzare MicroRuntimeService e non lo facevo da qui l'errore...sistemato quello ancora non andava...why? perchè nel file AndroidManifest.xml bisognava aggiungere la richiesta di accesso a internet zio frank....fatto ciò finalmente quell'iconcina che mi ha fatto bestemmiare per quasi un mese si è accessa! Non vedo l'ora di finire la parte sul pc per buttarmi sul telefono...stamattina sono andato avanti a inserire task in modo da avere almeno una procedura completa da far vedere al prof credo settimana prossima. Nice work! :)

martedì 6 settembre 2011

Tesi project/15

ATTENZIONE ATTENZIONE!!! La fortezza di Android sta cadendo...questa mattina sono riuscito a far funzionare il dummy agent della versione precedente di Jade sul telefono e funzionava tutto...adesso devo carpirne i segreti e farlo funzionare sula nuova versione di Jade (dove in teoria hanno reso le cose più semplici)...oggi pomeriggio vedo se andare avanti con questo o con la parte dei task...intanto...GODO!!!

sabato 3 settembre 2011

Tesi project/14

Ok sono riuscito finalmente a vedere un pò di task che girano sul mobile,in particolare la procedura funziona fino al check-in,ma per finirla mi basta aggiungere le informazioni nel file .xml. Devo quindi terminare questa procedura con i restanti task (non dovrebbe creare problemi) e poi devo sistemare le cose tipo la visualizzazione sulla mappa della destinazione di un task,i servizi ecc. Ho pensato di aggiungere delle icone che si illuminano quando ad esempio si possono vedere i servizi o i negozi. Ah cosa importante,devo ancora fare il meccanismo che permette,in caso di cambiamento di qualche info (tipo lo stato del volo) di mandare una notifica al mobile. Fatto tutto ciò dovrei aver terminato con la parte sul pc e devo passare al mio nemico...android!

mercoledì 31 agosto 2011

Tesi project/13

Come al solito ho saltato un pò di giorni...comunque al momento riesco a far ottenere la procedura e anche i dati "live" (comprensivi di coordinate) da parte del mobileManager. Adesso bisogna usarle quando servono...ho pensato che ci sono casi in cui verrà usata la geo-localizzazione e altri no: si quando l'utente deve andare in una certa zona che riesco a limitare con approssimazione e no invece quando tipo si deve mettere in coda,in questi casi mi darà conferma l'utente. Domani mi piacerebbe riuscire a vedere un pò di task che girano sul mobile...spero di farcela. Sul fronte android non sono più andato avanti...quindi da quel lato sono ancora fottuto!

mercoledì 24 agosto 2011

Tesi project/12

Ok è da diversi giorni che non scrivo niente...riassunto veloce: ho deciso di avventurarmi nel mondo della classe Ontology che avevo snobbato fino a poco fa,ma ho dovuto tornare sui miei passi perchè con i task ho la necessità di trasferire oggetti (task appunto) tra gli agenti e quindi la maniera più corretta e comoda di farlo è usare Ontology appunto. Ecco una lista dei motivi di nervosismo ed insulti vari di questi giorni:
  • come c***o funziona la classe Ontology?!?
  • perchè dopo aver perso tempo a creare il dizionario non funziona una mina?!? (guida di m***a!!!)
  • di far partire un'agente su Android non se ne parla neanche...la guida dice una cosa (poco chiara),il tipo ne dice un'altra (altrettanto poco chiara)...sono no in alto mare...DI PIU' e non so cosa inventarmi!
Oggi sono riuscito finalmente ha usare Ontology e ha far scaricare la procedura da seguire al mobileManager; come ultima cosa oggi ho inserito altri concetti nel dizionario in modo da poter recuperare i dati "live" dall'airportInformationManager. Quindi il passo successivo è quello di provare a creare un db con dei dati veri e provare a recuperarli e passarli agli agenti usando gli oggetti dell'Ontology che ho creato. Domani montagna quindi ciccia...si riparte venerdì.
ps: viste le pesanti difficoltà incontrate con Android ho perso quasi del tutto la speranza di farcela per ottobre :( che palle!

martedì 16 agosto 2011

Tesi project/11

E' da un pò di giorni che non lavoro sulla tesi...perchè ho cazzeggiato :) oggi però ho ricominciato se no resto troppo indietro. Allora questa mattina sono riuscito (con relativa semplicità) a spostare un agente da un container all'altro,anzi da un'area all'altra. Ho posizionato gli access point e l'idea è quella di fare in modo che quando un mobile si sposta,vengono visualizzate tutte le info del settore dove si trova; inoltre,per quanto riguarda i task,dovrà essere l'utente a dare conferma di aver terminato una certa operazione.
Al momento riesco a gestire (sembra correttamente) il passaggio da un'area all'altra degli agenti...ho deciso di creare un container unico per gli agenti mobile, mentre i mobileManager verranno spostati nei container dell'area corretta. Il passo successivo è quello dei task...

mercoledì 10 agosto 2011

Tesi project/10

E dopo il divertimento assurdo di ieri a Gardaland,oggi sono tornato al lavoro. Giornata completamente dedicata alla questione access point: ho creato un nuovo file xml dove metto le info degli access point e all'avvio del sistema vengono disegnati sulla mappa (che non è più quella di prova ma quella dell'aeroporto Catullo di Verona che sarà quello che userò come esempio). In realtà detta così sembra che non ho fatto niente ma c'è voluto un pò di tempo a fare tutto. Domani sarei contento di riuscire finalmente ad avere la cosa che gli agenti mobile ricevono le info sul segnale wifi e magari anche permettere al systemManager di localizzarli sulla base di queste info. Dopo questo si passa ai task...dai dai che che si procede bene.

lunedì 8 agosto 2011

Tesi project/09

Ho terminato la mappa e adesso vengono visualizzati correttamente gli host,alla fine ho optato per la versione con la mappa integrata negli host e quella del systemManager è solo una mappa dove si vedono gli host ma non si possono spostare,altrimenti diventava un casino inutile. Oggi ho iniziato ad affrontare il problema degli access point,in particolare al momento sono fermo su alcuni punti:
1) sono abbastanza convinto che almeno in prima battuta gli access point non saranno posizionabili attraverso la mappa ma si impostano a mano le coordinate (inutile perdere tempo in cose al momento secondarie...prima deve funzionare...poi al limite lo facciamo anche bello);
2) gli agenti mobile,quando spostati,invieranno le nuove coordinate all'accessPointManager il quale dovrà dirgli la potenza del segnale,il nome dell'access point a cui sono collegati e in teoria anche il settore (un'area ha più settori);
3) con queste info i mobile inviano la richiesta di collegamento al systemManager il quale in base all'access point capisce in che area(e settore) si trovano e quindi fornisce l'aid dell'areaManager interessato.
Domani Gardaland (e vaiiiiiiiiiiiii!!!!!) e quindi pausa di un giorno...riprenderò mercoledì.

sabato 6 agosto 2011

Tesi project/08

Mercoledì ho disegnato una semplice mappa e sono riuscito a far comparire le icone degli agenti e a spostarli ma non è ancora tutto a posto. Poi giovedì sono andato dal prof: gli ho raccontato le nuove cose che ho aggiunto e mi ha detto che va bene. Mi ha accennato ancora alla possibilità di laurearsi a ottobre e io gli ho detto che la scelta per me dipende solo da una situazione climatica...con il freddo non mi piacerebbe troppo! Siamo rimasti che ne riparliamo la prossima volta (cioè fra un mese). Cosa molto importante poi che ho capito che è un prof dalla parte dello studente (se questo se lo merita) e quindi spero di fare bene e che mi diano il massimo. Altra cosa,mi ha dato il telefono che non sembra niente male; oggi (sabato) sono riuscito con relativa facilità a collegarlo al pc e a farci girare la prima applicazione...ottimo! Ah cosa importante...dato che XP era diventato lento superando più volte i miei limiti di pazienza ho fatto un'altra partizione e ho installato ubuntu 10.04 (lo stesso del lab),così quando vado in lab so già cosa devo fare...adesso si che posso andare via più veloce. Ultima nota che riguarda sempre il prof...mi sembra di avere intuito che avrebbe piacere (e pure io ce l'ho) di scrivere un articolo partendo dalla tesi e di provare a vedere se viene accettato per qualche conferenza...la cosa mi renderebbe alquanto orgoglioso! Ok per ora procediamo con il lavoro...vorrei sistemare la cosa della mappa al più presto così da passare alla parte dei task. Alternerò fasi di programmazione al capire bene come funziona Android...ma quando trovo il tempo per iniziare a scrivere un pò di tesi?

martedì 2 agosto 2011

Tesi project/07

Di ritorno dalle vacanze purtroppo,un'altra settimana l'avrei fatta volentieri (prima o poi metterò anche un riassunto di quella). Dunque,ieri ho sistemato e aggiunto ancora delle cose per quanto riguarda la connessione al sistema e mi sembra che adesso ci siamo quasi,adesso infatti vengono fatti 3 tentativi per cercare il sistema,viene fatto il login "veloce" se si può e tutte le etichette della gui sono a posto.
Obiettivo per oggi:capire come gestire le operazioni che le persone devono fare e quindi come gestire lo spostamento fra le aree. Ieri ho pensato di usare un'interfaccia dove c'è la mappa dell'aeroporto e spostare un'icona che mi rappresenta l'agente mobile nella varie zone e questo mi dovrebbe simulare il comportamento...devo vedere se è fattibile. Ok l'idea partorita è la seguente: creare un agente accessPoint per ciascuna area,il quale al suo interno ha le coordinate degli access point presenti nei vari settori all'interno dell'area; l'unico scopo di questo agente è quello di dare le informazioni sulla potenza del segnale agli agenti mobile che ne fanno richiesta. Gli agenti mobile eseguono ciclicamente la richiesta al servizio accessPoint_areaX per sapere la potenza del segnale in un determinato punto e a quale access point sono collegati. Niente,cambio di idea: un unico agente accessPoint per tutto l'aeroporto perchè se no non saprei che servizio cercare,se il prof mi fa l'obiezione che uno solo diventa un collo di bottiglia gli dico che posso fare un numero di repliche e faccio scegliere random ai mobile a quale collegarsi...si mi piace come idea. Mo bisogna farla...ho lavorato tutta la giornata ma non ho fatto molti passi avanti. Vado avanti domani perchè sono cotto.

venerdì 22 luglio 2011

Tesi project/06

Ho fatto una piccola modifica alla gui degli agenti mobili e adesso il simulatore non me li crea più...bestemmie! Provo a togliere quello che avevo aggiunto e vediamo se ritorna a posto...niente! Provo a rimettere una variabile d'ambiente che avevo tolto...se dopo questo non funziona non so più che fare...ancora niente...ok adesso mi sto incazzando sul serio,ma se non ho cambiato niente per quale stramaledetto motivo non funziona più??? Provo con Eclipse...funziona! Che stracazzo ha allora NetBeans che non funziona più?!? Ricopiando il codice di mobile.java da Eclipse a NetBeans tutto è tornato a posto...solo dio sa cosa era successo...ok andiamo avanti che ho già perso abbastanza tempo. Adesso ho fatto in modo che venga letto un file da cui prendere le login da inserire nel db del systemManager. Ho cambiato delle cose e adesso il mobile fa riferimento unicamente al suo mobileManager e questo mi sembra più corretto di come era prima. Adesso sto facendo le ultime cose prima di chiudere ovvero la connessione al sistema ma con la possibilità di disconnettersi dal sistema ma senza chiudere l'agente,quindi è come simulare una caduta di connessione e poi di riconnessione; voglio finire questa parte prima di partire per le vacanze! Ok sembra funzionare,ci sono delle cose minori da sistemare come le scritte sulla gui ma il funzionamento sembra corretto. And now...holidays!!!

giovedì 21 luglio 2011

Tesi project/05

Adesso sto facendo altri test con XML perchè ieri c'erano delle cose che non riuscivo a capire...ora ci dovrei essere. Ora sono passato a preoccuparmi della questione login che viene prima del problema del gestire le procedure...un passetto alla volta e andiamo avanti. In questi giorni sto facendo gran poco...molto male! Dopo la vacanza dovrò recuperare.

mercoledì 20 luglio 2011

Tesi project/04

Oggi voglio iniziare a pensare a come risolvere il problema della gestione della lista di attività. Per strutturare i file che conterranno la lista sto pensando di usare XML...faccio qualche prova per vedere se è fattibile...ok sembra esserlo, viene comodo strutturare le informazioni invece di usare un semplice file di testo dove dovrei cercare le cose,usando XML dovrei andare meglio quindi,XML salta a bordo(almeno per il momento). Termino la giornata facendo ancora qualche test su XML per capire bene come funziona la faccenda.

Tesi project/03


Ok sono passato in laboratorio...il sistema operativo è ubuntu...hmm...speriamo bene. Scarico JADE e poi Eclipse e provo ad avviarlo...niente. Il problema è presto trovato:manca il JDK. Scatta la domanda: per installare il JDK mi servono i permessi di amministratore che non ho ma che mi posso prendere...o no? BO! Mando una mail al prof per chiedere ma se non mi risponde me li prendo e faccio quello che mi serve.
Nel frattempo sto cercando di capire come funziona il mondo Android: scarico l'Android SDK (http://developer.android.com/sdk/index.html) e installo il plug-in per Eclipse.
Dopo aver letto in giro avvio la prima applicazione sull'emulatore Android...sti cazzi! Ma quanto è lento?! Usando la platform 3.2 i tempi sono biblici...caliamo alla 1.5 tanto per vedere qualcosa prima che il sole tramonti; ok funziona...sia chiaro,funziona un'applicazione che scrive a schermo "Sono la tua prima applicazione su Android" e nulla più, ma da qualche parte dovevo pur cominciare.
E' ormai da qualche giorno che non sto più andando avanti a programmare perchè sono stato occupato a capire Android,anche se prima di sviluppare l'agente per il telefono ce ne manca,ma il fatto è che sapere che c'è una cosa che non conosco non mi fa stare tranquillo e allora ho preferito affrontare subito il problema così da avere vita più facile più avanti. In particolare oggi ho letto http://developer.android.com/guide/topics/fundamentals.html che parla dei componenti fondamentali delle applicazioni Android...ok per ora tutto chiaro!
Probabilmente per il momento farò così: un pò di programmazione e un pò di lettura sul funzionamento di Android (e dovrò anche iniziare a buttare giù qualcosa della tesi). Trall'altro sabato parto per le (meritate) vacanze e quindi ci sarà uno stop di una settimana.

Tesi project/02

Primo checkpoint con il prof (15/7/11): tutto ok! Ho realizzato le fasi di avvio del sistema,della creazione e registrazione degli agenti di area con il sistema,la creazione e la cancellazione degli agenti mobili e il loro invio di keep-alive al sistema per dire che ci sono ancora.
Il prof ha detto che va tutto bene e di continuare così, inoltre se ho bisogno di portarmi a casa il telefono per fare delle prove ci mettiamo d'accordo.
Mi rendo conto di non essere ancora passato in laboratorio per vedere com'è la faccenda (il sistema alla fine di tutta la fiera dovrà girare sul pc del laboratorio)...farò un salto il lunedì dopo visto che tanto devo tornare in dipartimento per registrare il voto di un esame.

Tesi project/01

Passiamo alla parte divertente: la programmazione.
Ho usato JADE (http://jade.tilab.com/) per la programmazione ad agenti e più avanti dovrò usare JADE per Android in modo da poter sviluppare agenti che girano su questo sistema operativo.
Ho iniziato usando NetBeans come IDE ma dovrò usare anche Eclipse perchè è più comodo per quanto riguarda la parte riguardante Android dato che esiste un plug-in specifico (http://developer.android.com/sdk/eclipse-adt.html) che usa l'Android SDK...ok comunque no problem.
Non senza qualche difficoltà iniziale ho cominciato a scrivere le classi degli agenti che mi serviranno quantomeno per capire come funziona JADE.
Dopo una settimana di imprecazioni credo di avere la cosa abbastanza sotto controllo e di aver capito il meccanismo.

Tesi project/00

Cominciamo dal dire cosa devo realizzare: un'infrastruttura di supporto ai passeggeri in transito in un aeroporto realizzata attraverso un'architettura ad agenti. Non avendo a disposizione un aeroporto dovrò simulare molte cose (tra cui i passeggeri); inoltre voglio realizzare un agente che dovrà girare su sistema operativo Android dato che, un aeroporto non ce l'abbiamo ma un telefono con Android si.

Nella fase di analisi ho:
1) cercato di capire che cosa voglio che venga fatto dal sistema e che cosa deve essere messo a disposizione dei passeggeri;
2) scritto le procedure che di solito vengono eseguite in un aeroporto (check-in,controlli di sicurezza,ecc.);
3) descritto una bozza dell'architettura.

Queste sono a grandi linee le cose che ho fatto nella fase iniziale.

A volte ritornano

E rieccoci qui,a distanza di poco meno di un anno dal mio ultimo post ritorno a scrivere qualcosa. L'idea è la seguente: tenere un diario più o meno dettagliato sulla realizzazione del mio progetto di tesi; la trovo un'idea simpatica perchè:
1) sarà divertente una volta finito,rileggere le cose che ho scritto quando ero nella m***a più assoluta;
2) potrebbe servire a qualcuno che magari si avvicina per la prima volta a una delle tecnologie che uso;
3) cammin facendo se qualcuno ha consigli...ben venga :)

Cominciamo con il dire che parto già "male" nel senso che è da circa 2 settimane che ho iniziato a scrive codice e quindi dovrò fare un riassunto delle puntate precedenti mai andate in onda; inevitabilmente le prime saranno non molto dettagliate perchè sono già molte le cose che ho fatto, ma quando inizierò a scrivere (spero) giorno per giorno sarà tutto un pò più preciso.